UsedRange - Pronađite posljednju rabljenu ćeliju, stupac ili redak
Sljedeći kôd vratit će okvir s porukom koji prikazuje ukupan broj redaka korištenih na radnom listu. Prazni retci smatraju se upotrijebljenima ako podaci slijede prazan redak.
1 | MsgBox ActiveSheet.UsedRange.Rows.Count |
Morate li pokrenuti petlju po listu, ali ne znate gdje podaci prestaju? ActiveSheet.UsedRange.Rows.Count bi mogao pomoći.
Stavite ovo u modul:
123456789 | Sub LastRow ()Zatamni LastRow kao cijeli brojLastRow = ActiveSheet.UsedRange.Rows.CountMsgBox LastRowKraj podm |
123456789 | Pod LastCol ()Zatamni LastCol kao cijeli brojLastCol = ActiveSheet.UsedRange.Col.CountMsgBox LastColKraj podm |
Pronađi prvu praznu ćeliju
Koristeći VBA možda ćete morati pisati u prvu praznu ćeliju ili nakon zadnjeg retka koji se koristi u stupcu. Nema potrebe za ponavljanjem da biste to pronašli, sljedeći kod to čini umjesto vas.
U ovom primjeru kôd će napisati "FirstEmpty" u prvoj praznoj ćeliji u stupcu "d"
1234 | Javni Sub AfterLast ()ActiveSheet.Range ("d" & ActiveSheet.Rows.Count) .End (xlUp) .Offset (1, 0) .Value = "FirstEmpty"Kraj podm |
Broji iskorištene stupce na radnom listu
Sljedeći kôd vratit će u okvir za poruku ukupan broj stupaca korištenih na radnom listu. Prazni stupci smatraju se upotrijebljenima ako podaci slijede prazan stupac.
1 | MsgBox ActiveSheet.UsedRange.Columns.Count |
Zadnja korištena ćelija - problemi
Kad trebam Za … Sljedeće … Prelistajte cijeli stupac, obično koristim ActiveSheet.UsedRange.Rows.Count kako bih pronašao gdje stati. Uvijek sam imao sreće s ovim pristupom.
Također sam svjestan da Excel povremeno misli da zadnji redak negdje postoji, ali da je redak zapravo prazan. Vidio sam to nekoliko puta nakon uvoza podataka. Iz BeyondTechnology:
Objekti radnog lista UsedRange ne radi uvijek jer upotrijebljeni raspon (ili "prljavo područje") proračunske tablice može biti veći od područja koje je zapravo popunjeno vašim zapisima.