Я установил свои настройки Excel для десятичных разделителей на "."Кажется, это работает, поскольку, когда я набираю 2.5
в ячейку, он распознает ее как число и выравнивает ее правильно.
Теперь я запускаю следующий код
dim string_var as string
string_var = .Cells(row, col).Value
.Cells(row, col).Value = string_var
Я получаю 2,5
как вывод.Почему и когда .
был заменен на ,
и как этого избежать?Существует ли специальная настройка десятичного разделителя для VBA?
В консоли VBA я получаю:
debug.print(Application.International(xlDecimalSeparator))
.
debug.Print(Application.DecimalSeparator)
.
Существует связанный вопрос без ответа: Десятичный разделитель отличается в VBA иExcel Комментарии относятся к региональным настройкам.
На всякий случай, если вам интересно, зачем мне нужно значение в строковой переменной.У меня есть большой набор данных с текстом и цифрами и много пробелов.Мне нужно очистить вывод и, следовательно, хотел бы использовать функцию string trim
.