Вы уже знаете, что вы можете использовать переменные в своих макросах и что есть два основных типа переменных: строковые переменные (содержащие символы) и числовые переменные (содержащие числовые значения). Вы можете быстро и легко преобразовать число в строку в макросах. Это делается с помощью функции Str (). Вы используете эту функцию следующим образом:

A = Str(B)

В этом синтаксисе, если B равно 5, то по завершении A будет «5»; если B равно -4, то A будет «-4». Обратите внимание на начальный пробел при преобразовании положительных чисел. Это может не дать удовлетворительных результатов для некоторых подпрограмм. Вместо этого вы должны создать функцию, которая возвращает урезанную версию строки. Следующая функция делает именно это:

Function ToNum(X as Variant) as String     ToNum = Trim(Str(X))

End Function

Причина, по которой значение, переданное в функцию VBA (X), определяется как вариант, заключается в том, что затем вы можете передавать числовое значение любого типа.

Альтернативный подход — использовать следующий вариант функции:

Function ToNum(X as Variant) as String     ToNum = CStr(X)

End Function

Любой подход будет работать нормально.

_Примечание: _

Если вы хотите узнать, как использовать макросы, описанные на этой странице (или на любой другой странице на сайтах ExcelTips), я подготовил специальную страницу, содержащую полезную информацию.

link: / excelribbon-ExcelTipsMacros [Щелкните здесь, чтобы открыть эту специальную страницу в новой вкладке браузера].

ExcelTips — ваш источник экономичного обучения Microsoft Excel.

Этот совет (9749) применим к Microsoft Excel 2007, 2010, 2013, 2016, 2019 и Excel в Office 365. Вы можете найти версию этого совета для старого интерфейса меню Excel здесь:

link: / excel-Converting_Numbers_to_Strings [Преобразование чисел в строки].