Kysymys1:
Pitäisi tehdä makro, jolla verrataan erään solun (A4) arvoa A-sarakkeen soluihin A7-A500 ja kun vastaava löytyy, niin koko kyseinen rivi pitäisi deletoida. Eli jos A4=A7:A500 deletoi se rivi, josta löytyy vastaava arvo, kuin A4.
Kysymys2:
Taulukon yllä on 3 kpl VLOOKUP ja 1 kpl SUM- funktioita. Jos taulukosta poistaa tai siihen lisää rivejä, niin rivinumerointi elää siitäkin huolimatta, että funktiossa on suorat suluviittaukset, eli $ rivinumeroinneissa, alla esimerkit. Onko mahdollista säilyttää rivinumerointi, vaikka rivejä poistuu tai lisääntyy?
=VLOOKUP(A6;$A$9:$A$501;1;FALSE)
=SUM($C$9:$C$501)
Olisin kiitollinen jos näihin saisi jotain apua;
rivin poisto ja sen merkitys
6
194
Vastaukset
Kyssäri1
moduuliin...
Option Explicit
Function EtsiJaSiirrä(Hakuehto As Variant, HakuAlue As Range) As Range
Dim solu As Range
Dim EkaOsoite As String
Worksheets("Sheet1").Activate
With HakuAlue
Set solu = .Find( _
What:=Hakuehto, _
LookIn:=xlValues, _
LookAt:=xlWhole, _
SearchOrder:=xlByRows, _
SearchDirection:=xlNext, _
MatchCase:=False, _
SearchFormat:=False)
If Not solu Is Nothing Then
Set EtsiJaSiirrä2 = solu
EkaOsoite = solu.Address
Do
Set EtsiJaSiirrä2 = Union(EtsiJaSiirrä2, solu)
Set solu = .FindNext(solu)
Loop While Not solu Is Nothing And solu.Address EkaOsoite
End If
End With
End Function
Sub Testi2()
Dim Löydetty As Range
Dim solu As Range
On Error GoTo virhe
Set Löydetty = EtsiJaSiirrä(Range("A4"), Range("A7:A500"))
Löydetty.EntireRow.Delete
Exit Sub
virhe:
MsgBox "hakuehdoilla ei löytynyt tietoja!", vbInformation
End Sub
Kyssäri2
=VLOOKUP(A6;INDIRECT("A9:A501");1;FALSE)
=SUM(INDIRECT("C9:C501"))
Keep EXCELing
@Kunde- welivexeli
Kiitos kunde. Tuo moduuli onkin viikon juttu, että pääsee tuohon sisälle, testaan kyllä pian. Mutta hassua on tuo INDIRECTin toimivuus matemaattisessa funktiossa. Ymmärsin niin, että siinä asiat käsitetään tekstitiedostoina, enkä saa sitä toimimaan millään... mitä en ole nyt ymmärtänyt?
- welivexeli
OKEY. Kylläpä nuo toimikin pienellä viilauksella... kiitos vielä. Kun nyt olen päässyt makuun, niin olisi vielä ihan pikkuinen kysymys. Olen muotoillut painonapin, jossa makro hakee kentistä A6 - D6 syötetyt arvot, kopioi ne, lisää rivin, liittää sinne, tyhjentää syöttökentät ja järjestelee rivit päiväyksen mukaan. Kaikki toimii hienosti, mutta moduuliin pitäisi saada ehto, jolla estetään tyhjien rivien syöttäminen, eli. Painetaan nappia...
Jos soluissa A6 - D6 on jotain tee nämä; (kopioi, lisää rivi, liitä, tyhjennä)
Muutoin vaan järjestele.
Olen yrittänyt kaikkea ifelse jne. mutta en ole saanut muotoa oikein, jolla toimisi. Voisiko tähän vielä saada apua, vaan siis ehto puuttuu? - weli'hermo'vexeli
OKEY taas. Menee vähän yksinpuheluksi, mutta sain viimeisenkin ongelman ratkaistua, kun aikani väänsin ehtoja.
Aloitin suojaamaan alustavasti taulukkoa niin, että vaan 4 solua on vapaat, eli toimivat syöttökenttinä. palautuipa taas nämä ikävät tosiasiat mieleen, että suojaus on aivan naurettavan kömpelö... eipä siellä alla pyöri mikään muutos taulukossa! Millä nyt estän tumpeloinnit?tossapa vastaus kyssäreihin...
Sub Suojaa()
' poistaa taulukon suojauksen salasanalla
ActiveSheet.Unprotect "kunde"
' tsekkaa onko alue tyhjä
If Application.WorksheetFunction.CountA(Range("A6:D6")) > 0 Then
MsgBox "alueella on tietoa"
Else
MsgBox "alue on tyhjä"
End If
' suojaa taulukon salasanalla
ActiveSheet.Protect "kunde"
End Sub
Keep EXCELing
@Kunde
- welivexeli
KIITOS, eipä oikestaan ole käynyt mielessäkään moinen. Nättiä, nöyrin anteeksipyyntö excelin kömpelyyden mainitsemisesta... itse olen aika kömpelö :)
Ketjusta on poistettu 0 sääntöjenvastaista viestiä.
Luetuimmat keskustelut
Riikka ei suostu laskemaan bensan hintaa
Sanna laski esimerkiksi sähkön arvonlisäveron 10 prosenttiin, jonka Riiikka anosti 25,5 prosenttiin. Sannan aikaan bens112754Vain vasemmistohallitus saa minut menemään töihin
Änkyräkapitalistien sortaessa kansaa en laita rikkaakaan ristiin. Elän mielummin Kelan tuilla, ja jos niitä leikataan, n1092580- 1782452
EK: Suomi tarvitsee vuosittain 45 000 maahanmuuttajaa
Senpä takia Riikkakin laulaa sen lauluja kenen leipää syö. Viime vuonnahan Suomeen muutti 50 tuhatta ulkomaalaista. htt1582092Oliko se oikeasti epäselvää
sinulle että olin ihastunut sinuun? (Ymmärrän että siitä on aikaa, eikä voi olettaa että kaikkea muistaisi tai että men1241654Kristityt kastoiva alunperin upottamalla - upotuskaste annettiin vain uskoon tulleille aikuisille
Raamatussa on käännösvirhe. Kaste tulisi olla upottaa veteen, jota kreikan sana baptizo tarkoittaa. Aluseurakunta kast4581119- 84868
- 45787
Kievarin pöydät
Minkä helvetin takia kievarissa on laitettu pöytä laulajan taakse. Siellä huutavat nuoret niin että et omaa ääntäsi kuul15732Muslimiyhteisö jyrähti - Kova vaatimus Orpolle ILtalehti
Eiköhän se ala olla aika pistää stoppi noille muslimien vaatimuksille Suomessa ? Ei Suomessa ole pakko oll151723