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

A = Val(MyString)

B = Val("-12345.67")

C = Val("9876")

D = Val("   4     5  2      1")

Первая строка преобразует MyString в значение, помещая его в A. Вторая строка приводит к тому, что B устанавливается в -12345,67. Третья помещает значение 9876 в C, а последняя строка устанавливает D равным 4521. Обратите внимание, что пробелы игнорируются при преобразовании; вот почему последняя строка работает именно так. Вы также должны отметить, что попытка использовать форматированные числа при преобразовании приведет к путанице функции Val (). Таким образом, Val («1,234») вернет не значение 1234 (как можно было бы надеяться), а значение 1. Преобразование останавливается на первом нечисловом символе, в данном случае запятой.

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

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

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

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

Этот совет (12476) применим к Microsoft Excel 2007, 2010, 2013 и 2016.

Вы можете найти версию этого совета для старого интерфейса меню Excel здесь:

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