Í dag munum við læra um hvernig á að athuga auðveldlega hvort ein eða margar frumur séu tómar með Visual Basic for Applications. Innihaldið á við fyrir Excel 2019 / 365, 2016 og fyrri útgáfur af Microsoft Office.
Undirbúningsvinna
Áður en þú byrjar að kóða með VBA í Excel þarftu að tryggja að þróunarflipi þinn sé virkur. Ef það er ekki raunin, vinsamlegast skoðaðu þetta stutta kennsluefni .
Athugar hvort Excel frumusvið sé tómt með VBA
- Í Excel, opnaðu Visual Basic umhverfið þitt með því að ýta á Alt+F11
- Settu eftirfarandi kóða inn sem aðferð í vinnublaðið þitt, eða að öðrum kosti í sérstaka VBA einingu.
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
- Farðu í töflureikninn þinn og veldu handahófskennt svið af frumum.
- Farðu aftur í Visual Basic ritilinn og tryggðu að Immediate viewer (CTRL+G) sé sýnilegur - þar sem Debug.Print aðferðin í kóðanum mun birta niðurstöðu sína í þann glugga.
- Smelltu á F5 til að keyra kóðann þinn.
- Skoðaðu niðurstöðurnar strax í glugganum.

- Öll auð hólf verða auðkennd.
Mögulegar viðbætur við kóðann: Þú getur augljóslega framlengt þennan kóða eftir þörfum ef þú hefur áhuga á að sleppa auðum gildum eða bara gera ekkert ef hólfin eru ekki full. Á sama hátt geturðu athugað hvort sviðið sjálft sé tómt, þ.e. - engir svartir reiti eru í.
Athugar reiti sem ekki eru tómir
Á sama hátt er hægt að nota IsEmpty eignina til að athuga hvort reitir séu ekki auðir.
If Not IsEmpty(Cell.Value) = True Then
Debug.Print ("Not Empty")
Else
Debug.Print ("Empty")
End If
Bónus: Notaðu eftirfarandi kóða ef þú vilt auðkenna tómar reiti líka.
Dim i As Long Dim c As Long Dim myRange As Range Dim myCell As Range Set myRange = Range("A1:A10") Fyrir hverja 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 _ "Það eru alls " & ég & " tómt(r) hólf úr " & c & "."