Vandaag leren we hoe u eenvoudig kunt controleren of een of meerdere cellen leeg zijn met Visual Basic for Applications. De inhoud is relevant voor Excel 2019/365, 2016 en eerdere versies van Microsoft Office.
Voorbereidend werk
Voordat u begint met coderen met VBA in Excel, moet u ervoor zorgen dat uw ontwikkeltabblad is ingeschakeld. Als dat niet het geval is, bekijk dan deze korte tutorial .
Controleren of het bereik van Excel-cellen leeg is met VBA
- Open in Excel uw Visual Basic-omgeving door op Alt+F11 . te drukken
- Voeg de volgende code in als een procedure in uw werkblad, of als alternatief in een speciale VBA-module.
Sub Check_Cell_is_empty_alt()
Dim rng As Range
Set rng = Selection
For Each Cell In rng
If IsEmpty(Cell.Value) = True Then
Debug.Print ("Empty")
Else
Debug.Print ("Not Empty")
End If
Next Cell
End Sub
- Ga naar je spreadsheet en selecteer een willekeurig celbereik.
- Ga terug naar de Visual Basic-editor en zorg ervoor dat de directe viewer (CTRL+G) zichtbaar is, aangezien de methode Debug.Print in de code het resultaat naar dat venster zal sturen.
- Druk op F5 om uw code uit te voeren.
- Bekijk de resultaten in het directe venster.

- Alle lege cellen worden geïdentificeerd.
Mogelijke uitbreidingen van de code: U kunt deze code uiteraard naar behoefte uitbreiden als u geïnteresseerd bent om lege waarden over te slaan of gewoon niets te doen als de cellen niet vol zijn. Op dezelfde manier kunt u controleren of het bereik zelf leeg is, dat wil zeggen dat er geen zwarte cellen in zitten.
Niet-lege velden controleren
Op dezelfde manier kunt u de eigenschap IsEmpty gebruiken om te controleren op velden die niet leeg zijn.
If Not IsEmpty(Cell.Value) = True Then
Debug.Print ("Not Empty")
Else
Debug.Print ("Empty")
End If
Bonus: gebruik de volgende code als u ook lege cellen wilt markeren.
Dim i zo lang Dim c zo lang Dim myRange As Range Dim myCell As Range Stel myRange = Range("A1:A10") in voor elke myCell in myRange ' c = c + 1 If IsEmpty(myCell) Then myCell.Interior.Color = RGB(255, 87, 87) i = i + 1 End If Next myCell MsgBox _ "Er zijn in totaal " & ik & " lege cel(len) uit " & c & "."