Rivienpoisto makro jättää rivejä välistä

hukkaantunut

Eli koodin pätkä on tässä:

Range("a1:a480").Select
For Each Cell In Selection
If Cell.Value = "0" Then
Cell.EntireRow.Delete
End If
Next Cell
Range("a1").Select

Tarkoitus siis poistaa kaikki rivit välillä a1:a480, a sarakkeen solun arvo on 0. Tuo toimii muuten mutta sitä pitää toistaa usean kerran että se poistaa kaikki rivit. Saisiko sen muutettua niin ettei se hyppisi rivien yli? Helposti?

5

454

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • hukkaantunut

      Tarkemmin sanottuna tuo hyppää aina yhden rivin yli.

    • makron pitää toimia alhaalta ylöspäin... ;-)

      • hukkaantunut

        Olisko ollut toteutuksesta vinkkiä?


      • vaikka tuota
        hukkaantunut kirjoitti:

        Olisko ollut toteutuksesta vinkkiä?

        Sub PoistaRivit()
        Dim s As Single
        Dim rForDelete As Range
        Dim c As Range
        Dim i As Long
        With Sheets("Sheet1")
        For Each c In .Range(.Cells(1, 1), .Cells(1000, 1))
        If c.Value = 0 Then
        If rForDelete Is Nothing Then
        Set rForDelete = c
        Else
        Set rForDelete = Union(rForDelete, c)
        End If
        End If
        Next
        End With
        If Not rForDelete Is Nothing Then rForDelete.EntireRow.Delete
        End Sub


      • hukkaantunut
        vaikka tuota kirjoitti:

        Sub PoistaRivit()
        Dim s As Single
        Dim rForDelete As Range
        Dim c As Range
        Dim i As Long
        With Sheets("Sheet1")
        For Each c In .Range(.Cells(1, 1), .Cells(1000, 1))
        If c.Value = 0 Then
        If rForDelete Is Nothing Then
        Set rForDelete = c
        Else
        Set rForDelete = Union(rForDelete, c)
        End If
        End If
        Next
        End With
        If Not rForDelete Is Nothing Then rForDelete.EntireRow.Delete
        End Sub

        Sehän toimii niinkuin pitääkin. Kiitän ja kumarran.


    Ketjusta on poistettu 0 sääntöjenvastaista viestiä.

    Luetuimmat keskustelut

    1. Eutanasia?

      Kertokaas omia mielipiteitä eutanasiaan liittyen. Onko mielestäsi oikein vai väärin ja miksi?
      Arvot ja etiikka
      10
      12427
    2. Eutanasia - miksi eläimelle sallitaan armokuolema, mutta ihmiselle ei?

      Olen pitkään ihmetellyt yhtä asiaa Suomessa. Kun koira kärsii parantumattomasta sairaudesta ja kovista kivuista, eläinlä
      Arvot ja etiikka
      5
      11193
    3. Riikka Purran kaudella nousi bensan hinta yli 2 euron

      Muistatteko kuinka edellisen vasemmistohallituksen aikana, ns. Marinin aikakaudella, bensiiniä sai 1,3 euron litrahinnal
      Maailman menoa
      177
      5112
    4. Veli Sofia teki urosmehiläisen työn

      Paljastaessaan kuinka TPS:ssä ei joukkuehenki toimi sooloilijoiden vuoksi, jonka takia koko seura ei pärjää kilpailussa
      Maailman menoa
      31
      3726
    5. Mitäs nyt sijoittajat?

      Pörssit laskevat maailmalla Iranin sodan takia ja muutenkin ovat olleet Trumpin vallan alla epävarmat. Ainoa, mikä on no
      Maailman menoa
      196
      3564
    6. Hjallis Harkimon, 72, Jasmine-rakas, 37, paljastaa suhteen alusta: "Vähän..."

      Liikemies, kansanedustaja Hjallis Harkimo ja tuottaja-juontaja Jasmine Pajari ovat pariskunta. He asuvat yhdessä Sipooss
      Suomalaiset julkkikset
      50
      3149
    7. Unisex-vessat

      Ahdistaa. Miksi kaikki pitää tasapäistää tasa-arvon nimissä? Tasa-arvo on sitä, että kunnioitetaan sukupuolien erilaisu
      Tunteet
      109
      2874
    8. Jäit kiinni siitä

      että katselet minua. Käänsin pääni, minäkin etsin sinua, ja meidän katseemme kohtasivat. Eikä se haittaa - molemmat ky
      Ikävä
      13
      2448
    9. Sosiaalidemokratia romahtanut kautta maailman

      nuoret eivät enää kannata järjetöntä aatetta, joten demarien täytyy hakea kannattajia mamuista. Ruotsin sos.demit jo kie
      Maailman menoa
      53
      2185
    10. Jutta Larm, 52, haluaa kumota tämän piintyneen ikämyytin

      Oletko samaa mieltä? Jutta Larm on 52-vuotias ja tehnyt pitkän uran yrittäjänä. Hän haluaa kumota tämän piintyneen ikämy
      50 plus
      19
      1975
    Aihe