Loop met If ... Then werkt niet

Status
Niet open voor verdere reacties.

JosjaWillems

Gebruiker
Lid geworden
15 dec 2008
Berichten
13
Hallo,

Ik probeer er voor te zorgen dat Excel in een specifieke kolom (bijvoorbeeld A1:A10) een regel verbergt als er niets in staat. De code voor het verbergen werkt wel:

Code:
If Range("A36") = "" Then
Rows("36:36").Select
Selection.EntireRow.Hidden = True
End If

Als ik hier echter een loop bij wil doen, loopt Excel/VBA vast. De hele code ziet er nu als volgt uit:

Code:
Sub Zero()

If Cells(i , 1) = "" Then
Selection.EntireRow.Hidden = True
End If
i = i + 1
Do While i <= 10
Loop

End Sub

Hulp wordt zeer op prijs gesteld! :thumb:

Jos
 
Het volgende is fout:

Code:
Do While i <= 10
Loop

Want nu doe je binnen je loop helemaal niets en daardoor heeft de loop geen zin.
Ook blijft deze loop oneindig lang lopen doordat er nooit een stopconditie optreedt.

Jouw stopconditie is: i <= 10.
Maar als je i nooit verhoogt dan komt i nooit bij 10.

Probeer je loop zo te maken:

Code:
Do While i <= 10
  ... Hier doen wat je wilt doen binnen de loop
  i = i + 1
Loop

Dit had je waarschijnlijk zelf ook kunnen achterhalen door de code te debuggen.
Zie de screenshot en bekijk eens wat de F8 en SHFT+F8 doen.
 

Bijlagen

  • debug_vba.jpg
    debug_vba.jpg
    45,8 KB · Weergaven: 43
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan