У меня есть столбец, который имеет значения, разделенные запятыми внутри каждой ячейки, которые выглядят так
0.1, 0.2,0.3, 0.4,0.5, 0.8,1.0
1.5, 1.6,2.0, 10.6,10.9, 15.2,30.75
20, 0.25,280.2, 0.29,300.2, 423,530.76
Как текстовая строка.
Цель состоит в том, чтобы удалить начальный ноль перед десятичной дробью, но только когда перед ней нет другой цифры (включая еще 0), я использую функцию поиска замены vba:
Option Explicit
Public Sub Replace0dot(Optional byDummy As Byte)
Columns("A").Replace What:"0.", _
Replacement:=".", _
LookAt:=xlPart, _
SearchOrder:=xlByRows, _
MatchCase:=False, _
SearchFormat:=False, _
ReplaceFormat:=False
Application.ScreenUpdating = True
End Sub
и я в конечном итоге с этим:
.1, .2,.3, .4,.5, .8,1
1.5, 1.6,2, 1.6,1.9, 15.2,3.75
2, .25,28.2, .29,30.2, 423,53.76
Удаляет все экземпляры ведущих 0. с . Итак, вы видите, 10.6 становится 1.6 . Но это должно остаться 10.6 Как я могу получить эквивалент поиска, который дает мне:
.1, .2,.3, .4,.5, .8,1
1.5, 1.6,2, 10.6,10.9, 15.2,30.75
20, .25,280.2, .29,300.2, 423,530.76
??? Похоже, что для достижения цели нужно было бы не объединять и повторно объединять.


