Vba: як знайти останній використаний стовпець


Ви можете використовувати такий базовий синтаксис у VBA, щоб знайти останній використаний стовпець на аркуші Excel:

 Sub FindLastColumn()
Range(" A14 ") = Cells.Find("*",Range(" A1 "),xlFormulas,xlPart,xlByColumns,xlPrevious,False).Column
End Sub

У цьому конкретному прикладі виконується пошук останнього використовуваного стовпця на поточному аркуші та повертається результат у клітинці A14 .

Якщо натомість потрібно відобразити останній стовпець вікна повідомлення, можна використати такий синтаксис:

 Sub FindLastColumn()
Dim LastCol As Long
    
LastCol=Cells.Find("*",Range(" A1 "),xlFormulas,xlPart,xlByColumns,xlPrevious,False).Column

MsgBox " Last Column: " & LastCol
End Sub

Наступні приклади показують, як використовувати кожен із цих методів на практиці.

Пов’язане: VBA: як знайти останній використаний рядок

Приклад 1. Знайдіть останній стовпець за допомогою VBA та відобразіть результати в клітинці

Припустімо, у нас є такий набір даних у Excel, який містить інформацію про різних баскетболістів:

Ми можемо створити такий макрос, щоб знайти останній стовпець, який використовується на цьому аркуші Excel, і відобразити результат у клітинці A14 :

 Sub FindLastColumn()
Range(" A14 ") = Cells.Find("*",Range(" A1 "),xlFormulas,xlPart,xlByColumns,xlPrevious,False).Column
End Sub

Коли ми запускаємо цей макрос, ми отримуємо такий результат:

Зверніть увагу, що клітинка A14 містить значення 2 .

Це говорить нам, що останній стовпець, який використовується на цьому аркуші, є стовпцем 2.

Також варто зауважити, що якщо у вас є порожні стовпці перед використаним стовпцем, цей макрос завжди знаходитиме останній використаний стовпець.

Наприклад, припустімо, що ми запускаємо макрос на такому наборі даних:

Комірка A14 містить значення 5 , оскільки це останній стовпець, що містить значення.

Приклад 2: знайдіть останній стовпець за допомогою VBA та відобразіть результати у вікні повідомлення

Припустімо, замість цього ми хочемо знайти останній використаний стовпець на аркуші та відобразити номер стовпця у вікні повідомлення.

Для цього ми можемо створити такий макрос:

 Sub FindLastColumn()
Dim LastCol As Long
    
LastCol=Cells.Find("*",Range(" A1 "),xlFormulas,xlPart,xlByColumns,xlPrevious,False).Column

MsgBox " Last Column: " & LastCol
End Sub

Коли ми запускаємо цей макрос, ми отримуємо такий результат:

VBA знайти останній використаний стовпець

Вікно повідомлення повідомляє нам, що останній стовпець, який використовується на аркуші, це стовпець 2 .

Примітка . Ви можете знайти повну документацію для методу пошуку VBA тут .

Додаткові ресурси

У наступних посібниках пояснюється, як виконувати інші типові завдання у VBA:

VBA: як обчислити середнє значення діапазону
VBA: як підрахувати кількість рядків у діапазоні
VBA: як видалити повторювані значення в діапазоні

Додати коментар

Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *