Доброго времени суток!
Нужен макрос, который при наличии в ячейке слова "более ", и последующего за ним числового значения меняло это числовое значение на большее, и при этом удаляло бы слово "более ". Но только число должно меняться по последней цифре. Например:
"более 100" => "101"
"более 0,001 => "0,002"
То есть слово "более" + пробел + числовое значение заменяется на числовое значение +1 к последней цифре
В ячейках кроме этого может присутствовать какой-угодно текст.
Сейчас это работает следующим образом: создал макрос, для которого прописал условия замены типа:
и так до 99. Работает в selection хорошо, однако код получается слишком большой, и кроме того таким образом можно прописать условия замены только для двухзначных чисел. Для трехзначных чисел придется делать уже 999 условий и т.п. Нужно чтобы единичка прибавлялась именно к последней цифре, вне зависимости от значности чисел. Как можно оптимизировать массовую замену, или есть какой-то другой способ это сделать?
Нужен макрос, который при наличии в ячейке слова "более ", и последующего за ним числового значения меняло это числовое значение на большее, и при этом удаляло бы слово "более ". Но только число должно меняться по последней цифре. Например:
"более 100" => "101"
"более 0,001 => "0,002"
То есть слово "более" + пробел + числовое значение заменяется на числовое значение +1 к последней цифре
В ячейках кроме этого может присутствовать какой-угодно текст.
Сейчас это работает следующим образом: создал макрос, для которого прописал условия замены типа:
Код |
---|
Selection.Replace What:="более 10", Replacement:="11", LookAt:=xlPart, _ SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _ ReplaceFormat:=False Selection.Replace What:="более 11", Replacement:="12", LookAt:=xlPart, _ SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _ ReplaceFormat:=False Selection.Replace What:="более 12", Replacement:="13", LookAt:=xlPart, _ SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _ ReplaceFormat:=False ... |