Я написал простой код в VBA (и видел вопросы here и here и ни одно из этих решений не работает).Изменение десятичного разделителя в VBA
Dim toString As String
toString = cell.Value & "_"
If (InStr(toString, ",")) Then
toString = Replace(toString, ",", ".")
toString = Trim(toString)
cell.Value = " " + Left(toString, (Len(toString) - 1))
End If
К сожалению, вместо строки с точкой сепаратора, первенствует дает мне два раз с запятой в cell.Value. Любопытно, когда я обмениваюсь этим пробелом с помощью «_», он преобразует f. ех. 12,3 в _12.3. Как я могу это исправить?
P.S. Я добавляю «_» в конец, чтобы гарантировать, что toString останется String.
Что должна делать эта линия? 'cell.Value =" "+ Left (toString, (Len (toString) - 1))' – Andreas
@Andreas Сначала это выглядело так: 'cell.Value = Left (toString, (Len (toString) -1))' но Я обнаружил, что cell.Value изменяется на double, поэтому я попытался добавить пробел, чтобы преобразовать его в строку, но безуспешно. – lawstud