Найти тему

📌 Строковый тип данных VBA (переменная Dim)

Оглавление

Ребята, всем привет! 👋

Продолжаем изучать VBA. В этом уроке мы рассмотрим:

  • что такое тип строковой переменной;
  • как объявить строковую переменную на модульном или глобальном уровне;
  • как преобразовать значения, сохраненные в виде строки;
  • как преобразовать строку, хранящуюся в виде значений.

Если вы только начинаете осваивать VBA мы уверены, каждый может найти для себя что-то новое!

✨ А прежде, чем мы начнем 📣 напомню, теперь у нас на канале есть удобный рубрикатор 👉 Быстрый поиск решения. Путеводитель по Excel, а все видео 📽 предыдущих уроков доступны и на YouTube.

Строковый тип данных VBA (переменная Dim)
Строковый тип данных VBA (переменная Dim)

🔔 ссылку на исходник и возможность скачать файл с примером см. в конце статьи 🔽🔽🔽🔽🔽🔽🔽🔽🔽🔽🔽🔽🔽🔽🔽🔽🔽🔽

☑️ Тип строковой переменной

Строковый тип данных является одним из наиболее распространенных типов данных в VBA.

Строковый тип данных хранит “строки” текста.

Для объявления переменной строковой переменной используется оператор Dim (сокращение от Dimension):

▶️ Dim strName as String

🔔 Dim означает измерение. При использовании ключевого слова Dim укажите имя и тип данных новой переменной.

Это показано в приведенном ниже коде:

Sub DeclaringAVariableUsingDim()
Dim productName as String Dim myNumber as Integer Dim myRange as Range
Dim wb as Worksheet
Dim myValue as Boolean
End Sub

🔔 В приведенном коде мы объявили пять разных переменных и использовали пять разных типов данных.

Чтобы присвоить значение переменной, используется знак равенства:

▶️ strName = "Fred Smith"

Включение в процедуру выглядит следующим образом:

Sub strExample()

Dim strName as string 'объявить строку

strName = "Изучаем VBA" 'заполнить строку

MsgBox strname 'показать окно сообщения
End Sub

🔔 Если вы выполните приведенный выше код, появится следующее окно сообщения.

Пример: Тип строковой переменной
Пример: Тип строковой переменной

⚠️ ВАЖНО!

На самом деле существует 2 типа строковых переменных – фиксированные и переменные.

Строковая переменная “variable” (показанная в примере выше) позволяет использовать строку любой длины (это наиболее распространенный).

“Фиксированная” строковая переменная определяет размер строки. Фиксированная строка может содержать до 65 400 символов.

▶️ Dim strName as string *20

🔔 Когда вы определяете фиксированную переменную, количество символов в переменной фиксируется, даже если вы используете меньше символов.

🔔 Если вы объявили строку без указания длины, то строка будет содержать только столько символов, сколько ей передано.

☑️ Как объявить строковую переменную на модульном или глобальном уровне

В примере выше мы объявили строковую переменную в процедуре.

-3

⚠️ ВАЖНО! Переменные, объявленные с помощью процедуры, могут использоваться только в рамках этой процедуры.

Вместо этого вы можете объявлять строковые переменные на модульном или глобальном уровне.

🔘 Модульный уровень

Переменные уровня модуля объявляются в верхней части модулей кода с помощью оператора Dim.

-4

⚠️ ВАЖНО! Эти переменные могут использоваться с любой процедурой в этом модуле кода.

🔘 Глобальный уровень

Переменные глобального уровня также объявляются в верхней части модулей кода.

НО, вместо использования инструкции Dim вы используете общедоступную инструкцию, чтобы указать, что строковая переменная доступна для использования во всем вашем проекте VBA.

▶️ Public strName as String

-5

⚠️ ВАЖНО!

  • Если вы объявили строковую переменную на уровне модуля и используете ее в другом модуле, возникнет ошибка.
  • Если вы используете ключевое слово Public для объявления строковой переменной, ошибка не возникнет, и процедура будет выполнена идеально.

☑️ Как преобразовать значения, сохраненные в виде строки

Например, у вас есть значения в Excel, которые хранятся в виде текста

-6

⚠️ Обратите внимание, что значение в A1 выровнено по левому краю, что указывает на текстовое значение

▶️ Вы можете использовать функцию VBA, которую можно использовать для преобразования в число:

-7

🔔 После только вы запустите код, апостроф исчезает, а после запятой будут два нуля (567895,00), что указывает на то, что оно теперь хранится как число.

-8

🔔 Особенно это полезно , когда вы перебираете большой диапазон ячеек

▶️ В данном случае используется код:

-9

В результате все ячейки будут преобразованы в числа:

-10

☑️ Как преобразовать строку, хранящуюся в виде значений

Аналогичным образом могут существовать значения, которые необходимо преобразовать из строки в значение – например, если вам требуется начальный ноль (например в табельном номере):

▶️ В данном случае используется код:

-11

Результат:

-12

🔔 Обратите внимание, что вам нужно начинать текстовую строку с апострофа (‘) перед нулем, чтобы указать Excel ввести значение в виде строки.

А на этом сегодня все. 👏 Продолжение следует...

Подписывайтесь на канал, чтобы не пропустить новые уроки и полезные фишки Excel. Следите за нашими новостями и вы узнаете больше о VBA и Excel в частности.

📝 Нам очень важна Ваша обратная связь. Отзыв по уроку и любые вопросы пишите в комментариях.

💝 А если у Вас пока нет вопросов, но вы дочитали данную статью до конца оставьте в комментариях просто смайлик 😉 (автору будет приятно)

И конечно же, за лайк 👍  и репост 🔁 данного поста благодарочка 💖 и респект 🤝 каждому!

СКАЧАТЬ ФАЙЛ С ПРИМЕРОМ

Подписывайтесь на канал, чтобы не пропустить новые уроки и полезные фишки Excel.
Подписывайтесь на канал, чтобы не пропустить новые уроки и полезные фишки Excel.

Наука
7 млн интересуются