• Privacywetgeving
    Het is bij Helpmij.nl niet toegestaan om persoonsgegevens in een voorbeeld te plaatsen. Alle voorbeelden die persoonsgegevens bevatten zullen zonder opgaaf van reden verwijderd worden. In de vraag zal specifiek vermeld moeten worden dat het om fictieve namen gaat.

macro: rij verwijderen

Status
Niet open voor verdere reacties.

sickofitall

Gebruiker
Lid geworden
29 sep 2008
Berichten
375
Hoi

ik ben een amatuer qua macro's schrijven en op deze zit ik al een tijdje te zoeken terwijl het heel simpel zou moeten zijn :confused:

In kolom H staat ofwel het woord "Totaal" ofwel niets.
Nu wil ik een macro verkrijgen die de rij verwijdert indien in kolom H het woord totaal staat.
Bvb in cel H22 staat "Totaal", dan moet rij 22 verwijderd worden.
En dit voor het hele werkblad.




Voorlopig heb ik dit: -> maar dat werkt dus niet :rolleyes:
Sub rijentotaal()
Dim rij As Long

rij = 1

Do While Cells("rij", 8).Value = ""
rij = rij + 1
Loop

Rows("rij").Select
Selection.Delete Shift:=xlUp

End Sub
 
Laatst bewerkt:
Even wat opmerkingen over je code:
- Het is goed dat je een variabele declareert (Dim rij As String) maar een string is tekst.
- Veel ontwikkelaars geven in de naam aan om wat voor variabele het gaat. Bijv.:
Dim sTekst as String
Dim strTekst as String
Dat is niet verplicht maar wel handig.
- Je gebruikt 8 voor de H-kolom maar je kunt gewoon de letter gebruiken. Bijv.:
Code:
Cells(rij,"H")
Range("H"& rij)
- Je kunt doordat rij tekst is geen berekening uitvoeren met rij.
- Probeer .Select en Selection te vermijden. Dus géén:
Code:
Worksheets("Blad1").Select
Range("A1").Select
Selection.Value = 1

Maar in 1 regel:
Code:
Worksheets("Blad1").Range("A1").Value = 1

Via onderstaande code lukt het wel.
Code:
Sub rijentotaal()
Dim lRij As Long
    For lRij = Range("H65536").End(xlUp).Row To 1 Step -1
        If Range("H" & lRij).Value = "totaal" Then
            Range("" & lRij & ":" & lRij & "").Rows.Delete
        End If
    Next
End Sub

Met vriendelijke groet,


Roncancio
 
Mijn declaratie van mijn variabele had ik ondertussen ook opgemerkt, dom van mij:o

mijn fout was te wijten aan het feit dat ik niet Range("" & lRij & ":" & lRij & "").Rows.Delete heb gebruikt.


stomme spaties :)


Hartelijk dank!!!!!!!
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan