UsedRange - atrodiet pēdējo izmantoto šūnu, kolonnu vai rindu
Šis kods parādīs ziņojumu lodziņu, kurā norādīts darblapā izmantoto rindu kopskaits. Tukšas rindas tiek uzskatītas par izmantotām, ja dati seko tukšajai rindai.
1 | MsgBox ActiveSheet.UsedRange.Rows.Count |
Vai jums ir jāpalaiž cilpa uz leju, bet nezināt, kur dati apstājas? Var palīdzēt ActiveSheet.UsedRange.Rows.Count.
Ievietojiet to modulī:
123456789 | Sub LastRow ()Dim LastRow kā vesels skaitlisLastRow = ActiveSheet.UsedRange.Rows.CountMsgBox LastRowBeigu apakš |
123456789 | Sub LastCol ()Dim LastCol kā vesels skaitlisLastCol = ActiveSheet.UsedRange.Col.CountMsgBox LastColBeigu apakš |
Atrodiet pirmo tukšo šūnu
Izmantojot VBA, jums, iespējams, būs jāraksta pirmajā tukšajā šūnā vai aiz pēdējās kolonnas izmantotās rindas. Lai to atrastu, nav jāveic cilpa, šis kods to dara jūsu vietā.
Šajā piemērā kolonnas “d” pirmajā tukšajā šūnā kods rakstīs “FirstEmpty”
1234 | Public Sub AfterLast ()ActiveSheet.Range ("d" un ActiveSheet.Rows.Count) .End (xlUp) .Offset (1, 0) .Value = "FirstEmpty"Beigu apakš |
Darblapā saskaitīt izmantotās kolonnas
Šis kods ziņojumu lodziņā atgriezīs kopējo darblapā izmantoto kolonnu skaitu. Tukšas kolonnas tiek uzskatītas par izmantotām, ja dati seko tukšajai kolonnai.
1 | MsgBox ActiveSheet.UsedRange.Columns.Count |
Pēdējā lietotā šūna - problēmas
Kad man ir nepieciešams … Tālāk … Izslēgt visu kolonnu es parasti izmantoju ActiveSheet.UsedRange.Rows.Count, lai atrastu, kur apstāties. Man vienmēr ir veicies ar šo pieeju.
Es arī apzinos, ka reizēm Excel uzskata, ka pēdējā rinda kaut kur pastāv, bet rinda faktiski ir tukša. Esmu to redzējis dažas reizes pēc datu importēšanas. No BeyondTechnology:
Darblapas objekts UsedRange ne vienmēr darbojas, jo izklājlapas izmantotais diapazons (vai “netīra zona”) var būt lielāks par apgabalu, kurā faktiski ir jūsu ieraksti.