Az üres cellák törlése Excel VBA-ban
Az alábbiakban egy programot nézünk be Excel VBA hogy törli az üres cellákat.
Helyzet:
1. Először kétféle változót deklarálunk az Integer. Az egyik nevű számláló és az egyik i. Inicializáljuk a változó számlálót 0 értékkel.
Dim counter As Integer, i As Integer
counter = 0
counter = 0
2. Ezután ellenőrizzük az egyes cellákat, hogy üres-e vagy sem (<> nem egyenlő). Ehhez egy hurkot használunk. Ha nem üres, akkor az értéket a B oszlopba írjuk. A számláló nyomon követi a B oszlopba átmásolt cellák számát. Minden alkalommal, amikor egy értéket másolunk a B oszlopba, a számláló értékét 1-gyel növeljük. Ez a programrész a következőképpen néz ki:
For i = 1 To 10
If Cells(i, 1).Value <> "" Then
Cells(counter + 1, 2).Value = Cells(i, 1).Value
counter = counter + 1
End If
Next i
If Cells(i, 1).Value <> "" Then
Cells(counter + 1, 2).Value = Cells(i, 1).Value
counter = counter + 1
End If
Next i
Eddig eddig:
3. Végül ürítjük ki a tartományt ("A1: A10"), másolja a B oszlop értékeit az A oszlopra és az üres tartományt ("B1: B10").
Range("A1:A10").Value = ""
Range("A1:A10").Value = Range("B1:B10").Value
Range("B1:B10") = ""
Range("A1:A10").Value = Range("B1:B10").Value
Range("B1:B10") = ""
Eredmény: