2013-11-12 2 views
0

Я использую макрос в Excel для замены второго символа в текстовой строке. Например, у меня есть этот номер: -4.023,31Можно ли заменить второй символ в тексте?

Я пытаюсь заменить запятую пустой строкой. Я использую следующий код:

Columns("E:E").Replace What:=",", Replacement:=".", LookAt:=xlPart, SearchOrder _ :=xlByRows, MatchCase:=False, SearchFormat:=False, ReplaceFormat:=False

Я могу заменить запятую с периодом, а число выглядит -4.023.31, но я хочу, чтобы это выглядело как -4023.31

Можно ли это сделать в Excel VBA ?

ответ

2

Вы должны сначала заменить период с нулевым, а затем заменить запятую с периодом

Например:

Sub dural() 
    With Range("E:E") 
     .Replace ".", "" 
     .Replace ",", "." 
    End With 
End Sub 
+0

Спасибо, что это работает. Я могу изменить свой макрос в соответствии с вашими советами «Листы» («Открытые открытые данные»). Выберите «Столбцы» («E: E»). Замените «Что: =«. », Замена: = Null, LookAt: = xlPart, SearchOrder _: = xlByRows, MatchCase: = False, SearchFormat: = False, ReplaceFormat: = False' –

+0

Спасибо за отзыв! –

0

Это должно дать вам то, что вы хотите, я думаю.

=REPLACE(E1, FIND(",", E1), 1, "") 

Вам придется скопировать его до конца листа.

+0

Пропустил часть этого макроса ... Если вы хотите сделать это в формуле в электронной таблице, это будет работать. Я собираюсь оставить это здесь на случай, если кому-то это понадобится. –

Смежные вопросы