Метод Application.Evaluate (Excel)
Преобразует имя Microsoft Excel в объект или значение.
Синтаксис
expression. Оценка (имя)
выражение: переменная, представляющая объект Application.
Параметры
Имя | Обязательный или необязательный | Тип данных | Описание |
---|---|---|---|
Name | Обязательный | Variant | Формула или имя объекта с использованием соглашения об именовании Microsoft Excel. Длина имени должна быть меньше или равна 255 символам. |
Возвращаемое значение
Variant
Примечания
С этим методом можно использовать следующие типы имен в Microsoft Excel:
Формулы.
Ссылки в стиле A1. Используйте любую ссылку на одну ячейку в нотации в стиле A1. Все ссылки считаются абсолютными.
Диапазоны. Используйте операторы диапазона, пересечения и объединения (двоеточие, пробел и запятая соответственно) со ссылками.
Определенные имена. Вы можете указать любое имя на языке макроса.
Внешние ссылки.
!
Используйте оператор для ссылки на ячейку или на имя, определенное в другой книгеEvaluate("[BOOK1.XLS]Sheet1!A1")
, например .Объекты диаграммы. Для доступа к свойствам и методам этого объекта можно указать любое имя объекта диаграммы, например Условные обозначения, Область построения или Ряд 1. Например, возвращает имя шрифта,
Charts("Chart1").Evaluate("Legend").Font.Name
используемого в условных обозначениях.Номер элемента управления формой. Вы можете указать число, а также имя, чтобы ссылаться на элемент управления формами на листе. Например, для метки, расположенной на листе (вкладка "Разработчик" - "Вставка", "Элементы управления формой" - "Метка"), и "Метка"
Evaluate("Label 1").Caption = "Hello"
Evaluate("1").Caption = "Hello"
делают то же самое.
Использование квадратных скобок (например, "[A1:C5]") идентично вызову метода Evaluate со строковым аргументом. Например, следующие пары выражений эквивалентны.
[a1].Value = 25
Evaluate("A1").Value = 25
trigVariable = [SIN(45)]
trigVariable = Evaluate("SIN(45)")
Set firstCellInSheet = Workbooks("BOOK1.XLS").Sheets(4).[A1]
Set firstCellInSheet = _
Workbooks("BOOK1.XLS").Sheets(4).Evaluate("A1")
Преимущество использования квадратных скобок заключается в том, что код короче. Преимущество использования Evaluate заключается в том, что аргумент является строкой, поэтому можно создать строку в коде или использовать переменную Visual Basic.
Пример
В этом примере включается полужирное форматирование в ячейке A1 на Листе1.
Worksheets("Sheet1").Activate
boldCell = "A1"
Application.Evaluate(boldCell).Font.Bold = True
Поддержка и обратная связь
Есть вопросы или отзывы, касающиеся Office VBA или этой статьи? Руководство по другим способам получения поддержки и отправки отзывов см. в статье Поддержка Office VBA и обратная связь.