UsedRange - Намерете последната използвана клетка, колона или ред
Следният код ще върне поле за съобщение, показващо общия брой редове, използвани в работен лист. Празните редове се считат за използвани, ако данните следват празния ред.
1 | MsgBox ActiveSheet.UsedRange.Rows.Count |
Трябва ли да пуснете цикъл надолу по лист, но не знаете къде спират данните? ActiveSheet.UsedRange.Rows.Count може да помогне.
Поставете това в модул:
123456789 | Sub LastRow ()Dim LastRow като цяло числоLastRow = ActiveSheet.UsedRange.Rows.CountMsgBox LastRowEnd Sub |
123456789 | Sub LastCol ()Dim LastCol като цяло числоLastCol = ActiveSheet.UsedRange.Col.CountMsgBox LastColEnd Sub |
Намерете първата празна клетка
Използвайки VBA, може да се наложи да пишете в първата празна клетка или след последния ред, използван в колона. Няма нужда от цикъл, за да намерите това, следният код го прави вместо вас.
В този пример кодът ще напише „FirstEmpty“ в първата празна клетка в колона „d“
1234 | Публичен Sub AfterLast ()ActiveSheet.Range ("d" & ActiveSheet.Rows.Count) .End (xlUp) .Offset (1, 0) .Value = "FirstEmpty"End Sub |
Пребройте използваните колони в работен лист
Следният код ще върне в полето за съобщение общия брой колони, използвани в работен лист. Празните колони се считат за използвани, ако данните следват празната колона.
1 | MsgBox ActiveSheet.UsedRange.Columns.Count |
Последно използвана клетка - проблеми
Когато имам нужда от За … Следващ … Преглеждам цяла колона, обикновено използвам ActiveSheet.UsedRange.Rows.Count, за да намеря къде да спра. Винаги съм имал късмет с този подход.
Наясно съм също, че понякога Excel смята, че последният ред съществува някъде, но всъщност е празен. Виждал съм това няколко пъти след импортиране на данни. От BeyondTechnology:
Обектът на работния лист UsedRange не винаги работи, тъй като използваният диапазон (или „мръсна зона“) на електронна таблица може да е по -голям от площта, действително населена с вашите записи.