• 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.

lege regel verwijderen

Status
Niet open voor verdere reacties.

royd79

Gebruiker
Lid geworden
9 feb 2009
Berichten
7
Goedendag,

Ik heb een bestand met 2 tabbladen waarbij ik in tabblad 2 (inleesbestand) alleen de regels wil hebben waar in Kolom F een waarde staat.

Hierbij het bestand.

gr.

Roy
 

Bijlagen

Beste royd79 ;)

Als je een filter zet op kolom F en vink je de lege cellen uit, dan blijven enkel in kolom F nog cellen met waarde erin staan.

Zie bestandje.

Groetjes Danny. :thumb:
 

Bijlagen

Danny,

Bedankt!

Echter werkt het nog niet zoals ik wil. Als ik het bestand namelijk op wil slaan als tekst bestand omdat ik de gegevens moet inlezen komen alle lege velden wel weer tevoorschijn.
 
Met deze macro lukt dat wel:

Code:
Sub DelEmptyRows()
  Dim c As Long
    Application.ScreenUpdating = False
    On Error Resume Next
    UR = Range("F65500").End(xlUp).Row
    For c = 210 To 1 Step -1
    If Cells(c, 6) = 0 Then
    Rows(c).EntireRow.Delete
    Application.ScreenUpdating = True
End If
Next
End Sub

Succes, Cobbe
 
Code:
Sub DelEmptyRows()
  Dim c As Long
    Application.ScreenUpdating = False
    On Error Resume Next
    [COLOR="Red"]UR [/COLOR]= Range("F65500").End(xlUp).Row
    For c = 210 To 1 Step -1
    If Cells(c, 6) = 0 Then
    Rows(c).EntireRow.Delete
    Application.ScreenUpdating = True
End If
Next
End Sub

Mag ik wat vragen Wat betekent die UR?
Met vr gr
Jack
 
UR is niet gedefinieerd.
UR heeft geen aparte betekenis, maar krijgt de waarde van de laatst ingevulde cel in de F-kolom.
Het is m.i. logischer om dan UR te gebruiken in de For-Next lus.
Code:
    For c =UR To 1 Step -1

Met vriendelijke groet,


Roncancio
 
Code:
Sub DelEmptyRows()
  Dim c As Long
    Application.ScreenUpdating = False
    On Error Resume Next
    UR = Range("F65500").End(xlUp).Row
    For c =UR To 1 Step -1
    If Cells(c, 6) = 0 Then
    Rows(c).EntireRow.Delete
    Application.ScreenUpdating = True
End If
Next
End Sub

Je mag alles vragen, was een missertje.
UR = Used Rows in kolom F
Was niet correct verwerkt.

Mvgr. Cobbe
 
Beste royd79 ;)

Danny,

Bedankt!

Echter werkt het nog niet zoals ik wil. Als ik het bestand namelijk op wil slaan als tekst bestand omdat ik de gegevens moet inlezen komen alle lege velden wel weer tevoorschijn.

Als je alles selecteert na de filter en dan op een ander tabblad plakt dan heb je de lege rijen niet meer.

Groetjes Danny. :thumb:
 
Het kan overigens in 1 regel.
Code:
Columns("F").SpecialCells(xlCellTypeBlanks).EntireRow.Delete

Met vriendelijke groet,


Roncancio
 
Dat komt omdat in kolom F wel formules staan en dus niet leeg is.

Cobbe
 
Dus moet ik het op een andere manier doen?

Nah, wellicht niet.
Kan je een voorbeeldbestandje sturen en bijvoorbeeld in kleur aangeven welke cellen verwijderd moeten worden?

Met vriendelijke groet,


Roncancio
 
Beste royd79 ;)

Als je er niet uitgeraakt met de codes, heb ik het nogmaals eens geprobeerd met de filter.

Zet in kolom F een filter en vink de lege cellen uit, dan selecteer het bereik en plak deze op een apart tabblad en met deze gegevens kan je dan verder werken.

Zie bestandje, heb wel invulbestand verwijderd omdat het anders te groot was.

VOORDEEL !!!

Je behoud je oude gegevens op je tabblad die je anders door de code verwijderd.

Groetjes Danny. :thumb:
 

Bijlagen

Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan