Объявление переменных (Microsoft Excel)
Если вы когда-либо программировали какие-либо макросы, вы, вероятно, знакомы с тем, как определять переменные с помощью ключевого слова Dim. Например, вы можете определить целочисленную переменную с именем MyVar следующим образом:
Dim MyVar As Integer
Это очень просто и отлично подойдет для вашего кода. Чтобы сохранить несколько строк в коде, у вас может возникнуть соблазн определить несколько переменных в каждой строке:
Dim x, y, z As Integer
В некоторых версиях языка BASIC это определяет и инициализирует три переменные, каждая из которых является целым числом. В VBA он также работает правильно, и никаких ошибок не возникает. Однако есть небольшая проблема — только последняя переменная (z) фактически определяется как целое число.
Вы можете увидеть, как это работает, используя следующий код:
Sub DimTest() Dim x, y, z As Integer Dim sTemp As String sTemp = "x is type " & VarType(x) & vbCrLf sTemp = sTemp & "y is type " & VarType(y) & vbCrLf sTemp = sTemp & "z is type " & VarType(z) MsgBox sTemp End Sub
Когда вы запускаете макрос, в окне сообщения отображается, что тип переменной для x и y равен 0, что означает, что переменная является вариантом (тип данных по умолчанию для необъявленных переменных). Только последнее окно сообщения (для z)
показывает тип переменной 2, что означает целое число.
Решение состоит в том, чтобы объявлять переменные по одной в каждой строке или использовать полный синтаксис для каждой переменной, как показано ниже:
Dim x As Integer, y As Integer, z As Integer
_Примечание: _
Если вы хотите узнать, как использовать макросы, описанные на этой странице (или на любой другой странице на сайтах ExcelTips), я подготовил специальную страницу, содержащую полезную информацию.
link: / excelribbon-ExcelTipsMacros [Щелкните здесь, чтобы открыть эту специальную страницу в новой вкладке браузера]
.
ExcelTips — ваш источник экономичного обучения Microsoft Excel.
Этот совет (12427) применим к Microsoft Excel 2007, 2010, 2013 и 2016.
Вы можете найти версию этого совета для старого интерфейса меню Excel здесь: link: / excel-Declaring_Variables [Declaring Variables]
.