Домашняя страница Undo Do New Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/Не меняется точка на запятую - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_  
Мир MS Excel » Вопросы и решения » Вопросы по Excel » Не меняется точка на запятую (Иное/Other)
Не меняется точка на запятую
Бахтиёр Дата: Пятница, 19.08.2016, 11:01 | Сообщение № 1
Группа: Пользователи
Ранг: Прохожий
Сообщений: 2
Репутация: 0 ±
Замечаний: 0% ±

Excel 2013
Добрый день.
Пишу в ячейки 850.954 и 110.210
Выделяю эти ячейки.
Главная - Найти и выделить - Заменить
Заменяю точку на запятую.
Нормально поменялось.

Пишу в другие ячейки 850.954 и 110.210
Выделяю эти ячейки.
Выполняю в окне Immediate Selection.Replace ".", ","
Вместо того, чтобы заменять, он просто убирает точку.

Подскажите, почему так?


P.S. Это происходит в любой книге, в том числе вновь созданной.
В настройках разделитель копеек - запятая, разделитель разрядов - пробел
Excel 2013, Windows 7


Сообщение отредактировал Бахтиёр - Пятница, 19.08.2016, 11:06
 
Ответить
СообщениеДобрый день.
Пишу в ячейки 850.954 и 110.210
Выделяю эти ячейки.
Главная - Найти и выделить - Заменить
Заменяю точку на запятую.
Нормально поменялось.

Пишу в другие ячейки 850.954 и 110.210
Выделяю эти ячейки.
Выполняю в окне Immediate Selection.Replace ".", ","
Вместо того, чтобы заменять, он просто убирает точку.

Подскажите, почему так?


P.S. Это происходит в любой книге, в том числе вновь созданной.
В настройках разделитель копеек - запятая, разделитель разрядов - пробел
Excel 2013, Windows 7

Автор - Бахтиёр
Дата добавления - 19.08.2016 в 11:01
buchlotnik Дата: Пятница, 19.08.2016, 11:25 | Сообщение № 2
Группа: Заблокированные
Ранг: Участник клуба
Сообщений: 3442
Репутация: 929 ±
Замечаний: 20% ±

2010, 2013, 2016 RUS / ENG
он не точку убирает, а заменяет её на пробел. Потому что для VBA - запятая - это разделитель тысяч, вот и получается, что при Replace формируется 850,954 которые он воспринимает как 850 тысяч и 954, поэтому на лист выгружает с учётом региональных настроек 850 954

программно замену можно сделать так:
[vba]
Код
Sub n()
For Each c In Selection
c.Value = c.Value
Next
End Sub
[/vba]


Сообщение отредактировал buchlotnik - Пятница, 19.08.2016, 11:37
 
Ответить
Сообщениеон не точку убирает, а заменяет её на пробел. Потому что для VBA - запятая - это разделитель тысяч, вот и получается, что при Replace формируется 850,954 которые он воспринимает как 850 тысяч и 954, поэтому на лист выгружает с учётом региональных настроек 850 954

программно замену можно сделать так:
[vba]
Код
Sub n()
For Each c In Selection
c.Value = c.Value
Next
End Sub
[/vba]

Автор - buchlotnik
Дата добавления - 19.08.2016 в 11:25
Бахтиёр Дата: Пятница, 19.08.2016, 11:44 | Сообщение № 3
Группа: Пользователи
Ранг: Прохожий
Сообщений: 2
Репутация: 0 ±
Замечаний: 0% ±

Excel 2013
buchlotnik, спасибо, понял.
850.954
Попробовал Selection.Replace ".", "."
VBA находя точку заменил его на точку, получилось тоже самое, но при выгрузке на лист (так как точка в VBA - это разделитель копеек) с учётом региональных настроек выгрузил 850,954
:)

Насчёт вашего кода, ИМХО, для скорости лучше так:
[vba]
Код
Sub n()
For Each x In Selection.Areas
x.Value = x.Value
Next
End Sub
[/vba]
 
Ответить
Сообщениеbuchlotnik, спасибо, понял.
850.954
Попробовал Selection.Replace ".", "."
VBA находя точку заменил его на точку, получилось тоже самое, но при выгрузке на лист (так как точка в VBA - это разделитель копеек) с учётом региональных настроек выгрузил 850,954
:)

Насчёт вашего кода, ИМХО, для скорости лучше так:
[vba]
Код
Sub n()
For Each x In Selection.Areas
x.Value = x.Value
Next
End Sub
[/vba]

Автор - Бахтиёр
Дата добавления - 19.08.2016 в 11:44
sboy Дата: Пятница, 19.08.2016, 11:51 | Сообщение № 4
Группа: Друзья
Ранг: Участник клуба
Сообщений: 2566
Репутация: 724 ±
Замечаний: 0% ±

Excel 2010
Добрый день.
У меня вот такой код замены точек на запятую
[vba]
Код
Selection.Replace What:=".", Replacement:=",", LookAt:=xlPart, _
        SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
        ReplaceFormat:=False
[/vba]


Яндекс: 410016850021169
 
Ответить
СообщениеДобрый день.
У меня вот такой код замены точек на запятую
[vba]
Код
Selection.Replace What:=".", Replacement:=",", LookAt:=xlPart, _
        SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
        ReplaceFormat:=False
[/vba]

Автор - sboy
Дата добавления - 19.08.2016 в 11:51
buchlotnik Дата: Пятница, 19.08.2016, 12:08 | Сообщение № 5
Группа: Заблокированные
Ранг: Участник клуба
Сообщений: 3442
Репутация: 929 ±
Замечаний: 20% ±

2010, 2013, 2016 RUS / ENG
sboy, ваш код в русских локалях даёт 850 954
 
Ответить
Сообщениеsboy, ваш код в русских локалях даёт 850 954

Автор - buchlotnik
Дата добавления - 19.08.2016 в 12:08
sboy Дата: Пятница, 19.08.2016, 12:28 | Сообщение № 6
Группа: Друзья
Ранг: Участник клуба
Сообщений: 2566
Репутация: 724 ±
Замечаний: 0% ±

Excel 2010
buchlotnik, так вроде русская у меня %)


Яндекс: 410016850021169
 
Ответить
Сообщениеbuchlotnik, так вроде русская у меня %)

Автор - sboy
Дата добавления - 19.08.2016 в 12:28
Мир MS Excel » Вопросы и решения » Вопросы по Excel » Не меняется точка на запятую (Иное/Other)
  • Страница 1 из 1
  • 1
Поиск:

Яндекс.Метрика Яндекс цитирования
© 2010-2024 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!