Как получить имя листа с помощью vba (с примером)
Вы можете использовать следующие методы в VBA, чтобы получить имя определенного листа в книге Excel:
Способ 1: получить имя активного листа
Function GetSheetName()
GetSheetName = ActiveSheet.Name
End Function
Эта функция вернет имя активного листа.
Способ 2: получить имя листа по номеру
Function GetSheetName(N As Integer)
GetSheetName = Sheets(N).Name
End Function
Эта функция вернет имя указанного вами n-го листа.
В следующих примерах показано, как использовать каждую функцию на практике со следующей книгой Excel с четырьмя листами:
Пример 1. Используйте VBA, чтобы получить имя активного листа.
Мы можем создать следующую функцию в VBA, чтобы получить имя текущего активного листа в книге Excel:
Function GetSheetName()
GetSheetName = ActiveSheet.Name
End Function
Предположим, что лист с именем stats в данный момент активен.
Мы можем ввести следующую формулу в ячейку E1 этого листа, чтобы вернуть имя активного листа:
=GetSheetName()
На следующем снимке экрана показано, как использовать эту формулу на практике:
Функция возвращает значение статистики , поскольку это имя активного в данный момент листа.
Пример 2. Используйте VBA для получения имени листа по номеру.
Мы можем создать в VBA следующую функцию, чтобы получить имя n-го листа книги Excel:
Function GetSheetName(N As Integer)
GetSheetName = Sheets(N).Name
End Function
Создав эту функцию, мы можем ввести следующую формулу в ячейку E1 активного в данный момент листа, чтобы вернуть имя второго листа в книге:
=GetSheetName(2)
На следующем снимке экрана показано, как использовать эту формулу на практике:
Функция возвращает значение команды , так как это имя второго листа в книге.
Дополнительные ресурсы
В следующих руководствах объясняется, как выполнять другие распространенные задачи в VBA:
VBA: как посчитать количество листов в книге
VBA: как извлечь данные из другой книги
VBA: как вставить несколько строк