Уведомление об ответе (письмо, email) может попасть в папку "Спам". На Яндексе (или в другой почтовой системе) пометьте полученное письмо "Не спам", чтобы остальные письма не попадали в папку "Спам". Или, если вы используете почтовую программу (а не браузер), то разрешите спаму попадать в папку "Входящие" (в этом случае в теме письма будет текст [OBORONA-SPAM]).

Не удаётся заменить запятую точкой

Автор Посетитель 22.08.2024, 23 августа 2024, 10:48

Посетитель 22.08.2024

Здравствуйте !
Подскажите, пожалуйста, не работает этот макрос в этом столбце.

Спойлер
Columns("O:O").NumberFormat = "@" ' Делаем текстовый формат, т.к. точку можно добавить только в нём
    Columns("O:O").Replace What:=",", Replacement:=".", LookAt:=xlPart, _
        SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=True, _
        ReplaceFormat:=False, FormulaVersion:=xlReplaceFormula2 ' Меняем запятую на точку
[свернуть]
В других случаях работал.
Макрос не видит запятую. При постановке других символов, цифр, например, замену производит.


Администратор

Команда Replace даёт неправильный результат.
Вместо команды Replace используйте какой-нибудь другой способ замены запятой на точку.
Вчера как раз я это и пробовал делать и не получилось, после чего предложил вам использовать апостроф. При использовании Replace число превращалось в дату, не смотря на то, что в столбце был Текстовый формат.

Посетитель 22.08.2024

Через апостроф получилось, спасибо !

Администратор

Можно не использовать апостроф, чтобы не усложнять ситуацию, т.к. в ячейке появляется лишний символ.
Достаточно использовать то, что вы раньше использовали:
1) сделайте в столбце Текстовый формат;
2) и такой код: Cells(i, 14).Value = Replace(Cells(i, 14).Value, ",", "."). Взято из предыдущей вашей темы.

Посетитель 22.08.2024