rivin poisto ja sen merkitys

welivexeli

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;

6

238

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • 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

    1. Kristillinen kaste annetaa upotuskasteena

      Kristillinen upotuskaste perustuu juutalaiseen mikve-kasteeseen, jossa upottaudutaan veden alle kokonaan. Paavali vertas
      Kaste
      162
      1117
    2. Koko kansan kaste Punaisen meren ylityksen aikana

      Koko Israelin 2,5 milj.kansa sai kasteen ja Pyhän Hengen lahjan ylittäessän Punaisen meren. 1.Kor.10 1 Sillä minä en ta
      Kaste
      366
      1077
    3. Ehkä vähän

      Rakastunut sinuun
      Ikävä
      48
      1031
    4. Sijaiskasteet kuolleitten puolesta

      Paavali teki Korintossa sijaiskasteita kuolletten puolesta eli ns. Mormoninkasteita. 1. Kor. 15:29 Mitä muutoin ne, j
      Kaste
      373
      999
    5. Kristillinen kaste toimitetaan upottamalla veteen - pään valelukaste ei kelpaa

      Kristillinen upotuskaste perustuu juutalaiseen puhdistautumiseen, jossa upottaudutaan veden alle kokonaan. Paavali verta
      Kaste
      153
      912
    6. Upotuskaste on raamatullisin kaste

      Jokainen raamattua lukenut tietää sen. Päivänselvä asia. Vauvalle annettu kaste ei löydy raamatusta.
      Kaste
      717
      847
    7. Et taida paljoa

      treffeillä käydä? 😆 mieheltä Naiselle
      Ikävä
      89
      827
    8. Martina ja jalkapalloilija2

      Seiska: Martina iski nuoren jalkapalloilijan vuosia sitten. Könysikö milf teinin kanssa?
      Kotimaiset julkkisjuorut
      182
      800
    9. Oikea kaste on syntisten kaste

      Oikea kaste on syntisten kaste. Vain syntisiä tulee kastaa. Itsensä uskoviksi ja vanhurskaiksi julistaneita ei tule ka
      Kaste
      51
      703
    10. Nainen, nyt esitän muutaman skenaarion

      Asumme yhdessä ja seurustelemme. 1. On ilta ja olet sohvalla makoilemassa ja räpläät kännykkääsi. Makuuhuoneesta kuulu
      Ikävä
      105
      699
    Aihe