UsedRange - Găsiți ultima celulă, coloană sau rând utilizată
Următorul cod va returna o casetă de mesaj care indică numărul total de rânduri utilizate într-o foaie de lucru. Rândurile goale sunt considerate utilizate dacă datele urmează rândul gol.
1 | MsgBox ActiveSheet.UsedRange.Rows.Count |
Trebuie să derulați o buclă pe o foaie, dar nu știți unde se opresc datele? ActiveSheet.UsedRange.Rows.Count ar putea ajuta.
Puneți acest lucru într-un modul:
123456789 | Sub LastRow ()Dim LastRow Ca întregLastRow = ActiveSheet.UsedRange.Rows.CountMsgBox LastRowSfârșitul Sub |
123456789 | Sub LastCol ()Dim LastCol ca întregLastCol = ActiveSheet.UsedRange.Col.CountMsgBox LastColSfârșitul Sub |
Găsiți prima celulă goală
Folosind VBA, poate fi necesar să scrieți în prima celulă goală sau după ultimul rând utilizat într-o coloană. Nu este nevoie să faceți o buclă pentru a găsi acest lucru, următorul cod o face pentru dvs.
În acest exemplu, codul va scrie „FirstEmpty” în prima celulă goală din coloana „d”
1234 | Public Sub AfterLast ()ActiveSheet.Range ("d" & ActiveSheet.Rows.Count) .End (xlUp) .Offset (1, 0) .Value = "FirstEmpty"Sfârșitul Sub |
Numărați coloanele folosite în foaia de lucru
Următorul cod va returna într-o casetă de mesaj numărul total de coloane utilizate într-o foaie de lucru. Coloanele goale sunt considerate utilizate dacă datele urmează coloanei goale.
1 | MsgBox ActiveSheet.UsedRange.Columns.Count |
Ultima celulă utilizată - Probleme
Când trebuie să Pentru … Următorul … Buclați într-o întreagă coloană, de obicei folosesc ActiveSheet.UsedRange.Rows.Count pentru a găsi unde să mă opresc. Am avut întotdeauna noroc cu această abordare.
De asemenea, sunt conștient de faptul că, ocazional, Excel consideră că ultimul rând există undeva, dar rândul este de fapt gol. Am văzut acest lucru de câteva ori după importul datelor. De la BeyondTechnology:
Obiectul Foaie de lucru UsedRange nu funcționează întotdeauna deoarece zona utilizată (sau „zona murdară”) a unei foi de calcul poate fi mai mare decât zona efectiv populată cu înregistrările dvs.