VBA - останній непорожній рядок [Усі версії]
Між версіями 2003 і 2007 років кількість рядків, які можна досягти в аркуші Excel, істотно змінилася. У результаті коди VBA, як показано нижче, запобігають перенесенню вашої робочої книги з однієї версії в іншу:
- Версії <2007:
Dim LastLine As Long LastLine = Діапазон ("A65536"). Кінець (xlUp).
- З 2007 року:
Dim LastLine As Long LastLine = Діапазон ("A1048576"). Кінець (xlUp).
У будь-якому випадку, тепер ви повинні використовувати [Усі версії]:
Dim LastLine As Long LastLine = Стовпці (1) .Find ("*",,,, xlByColumns, xlPrevious) .Row
або:
Dim LastLine As Long LastLine = Діапазон ("A" & Rows.Count) .End (xlUp) .Row
Ви також зіштовхнетеся з тією ж проблемою, коли ви використовуєте стовпці ... Ви можете використовувати цей код (наведений тут як приклад, є й інший синтаксис):
Dim LastCol As Integer LastCol = Клітинки (1, Cells.Columns.Count) .End (xlToLeft).
Перелічені тут коди відносяться до останнього непорожнього рядка в стовпці A (стовпці (1) .Find ("*",,,, xlByColumns, xlPrevious). Ряд, діапазон ("A" & Rows.Count). xlUp) .Row) і останній стовпець, перший рядок якого не порожній (Cells (1, Cells.Columns.Count) .End (xlToLeft) .Column) . Звичайно, ви можете адаптувати код до вашої зручності.