Я написал базовую процедуру, которая выполняет некоторые операции форматирования страницы (устанавливает верхние и нижние колонтитулы и так далее). Эта подпрограмма имеет лист в качестве первого параметра:
Sub FormatSheet(Optional ws As Worksheet = Nothing, _
Optional language As String = "Deutsch", _
...)
Все работало нормально, до сегодняшнего дня у кого-то была книга с листом Chart
. Поскольку вы можете установить все свойства и для такого листа, я сказал себе «хорошо, нет проблем, я изменю тип параметра на Sheet
вместо Worksheet
- проблема решена . Однако Я не смог найти такой класс Sheet
.
Мой обходной путь - изменить тип параметра на Object
- это работает. Однако мне не очень нравится эта попытка, поскольку объект может быть чем угодно, и я хочу явно разрешить только - uuhm Sheets . Конечно, я могу решить эту проблему, проверив тип объекта и еще много чего, но мой основной вопрос: есть ли какой-либо «родительский» тип класса в Excel / VBA для какого-либо листа?