С помощью этого кода хочу узнать имя листа, но происходит ошибка: Run-time error '13': Type mismatch.
Почему происходит ошибка?
Sub Macro()
' Вывод информации в View - Immediate Window.
Debug.Print Worksheets(Лист1).Name
End Sub
Для объекта Worksheets в скобках можно указывать:
1) имя листа. Имя листа можно посмотреть в Экселе на ярлыке листа. Имя листа нужно заключить в кавычки:
Debug.Print Worksheets("Лист1").Name
2) порядковый номер листа. В этом случае кавычки не нужны:
Debug.Print Worksheets(1).Name
В вашем коде передаётся vba-модуль листа. Модули листов можно посмотреть в VBA, в области "Project", перед скобками.
Вы передаёте vba-модуль. Так как это недопустимый вид данных для объекта Worksheets, то VBA сообщает, что тип данных не соответствует.