UsedRange - Poiščite zadnjo uporabljeno celico, stolpec ali vrstico
Naslednja koda bo vrnila polje s sporočilom, ki prikazuje skupno število vrstic, uporabljenih na delovnem listu. Prazne vrstice se štejejo za uporabljene, če podatki sledijo prazni vrstici.
1 | MsgBox ActiveSheet.UsedRange.Rows.Count |
Ali morate spustiti zanko po listu, vendar ne veste, kje se podatki ustavijo? ActiveSheet.UsedRange.Rows.Count bi lahko pomagal.
To vstavite v modul:
123456789 | Sub LastRow ()Zatemni LastRow kot celo številoLastRow = ActiveSheet.UsedRange.Rows.CountMsgBox LastRowEnd Sub |
123456789 | Sub LastCol ()Zatemni LastCol kot celo številoLastCol = ActiveSheet.UsedRange.Col.CountMsgBox LastColEnd Sub |
Poiščite prvo prazno celico
Z uporabo VBA boste morda morali pisati v prvo prazno celico ali po zadnji vrstici, uporabljeni v stolpcu. Za iskanje ni potrebe po zanki, naslednja koda to naredi namesto vas.
V tem primeru bo koda v prvo prazno celico v stolpcu "d" zapisala "FirstEmpty"
1234 | Public Sub AfterLast ()ActiveSheet.Range ("d" & ActiveSheet.Rows.Count) .End (xlUp) .Offset (1, 0) .Value = "FirstEmpty"End Sub |
Štetje uporabljenih stolpcev na delovnem listu
Naslednja koda bo v polju za sporočila vrnila skupno število stolpcev, uporabljenih na delovnem listu. Prazni stolpci se štejejo za uporabljene, če podatki sledijo praznemu stolpcu.
1 | MsgBox ActiveSheet.UsedRange.Columns.Count |
Zadnja uporabljena celica - težave
Ko moram Za … Naprej … Prebrskaj cel stolpec, ponavadi uporabim ActiveSheet.UsedRange.Rows.Count, da najdem, kje se ustaviti. Vedno sem imel srečo s tem pristopom.
Zavedam se tudi, da Excel občasno misli, da zadnja vrstica nekje obstaja, vendar je vrstica dejansko prazna. To sem videl nekajkrat po uvozu podatkov. Iz BeyondTechnology:
Objekt delovnega lista Rabljeno območje ne deluje vedno, ker je lahko uporabljeno območje (ali "umazano območje") preglednice večje od površine, ki je dejansko poseljena z vašimi zapisi.