![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы
![]() |
Поиск в этой теме
![]() |
![]() |
#1 |
Форумчанин
Регистрация: 22.02.2010
Сообщений: 326
|
![]()
Здравствуйте Уважаемые программисты!
Подскажите пожалуйста, как кодом vba excel 2003 при вводе в ячейку точки (в любой раскладке) автоматически заменять ее на запятую? Заранее спасибо! |
![]() |
![]() |
![]() |
#2 |
Старожил
Регистрация: 31.12.2010
Сообщений: 2,133
|
![]()
Смысл в том, чтобы вводить числа? Для ячейки А1, даты тоже можно вводить (с точками)
Код:
exceleved@yandex.ru Яндекс.Деньги: 410011500007619
|
![]() |
![]() |
![]() |
#3 |
Форумчанин
Регистрация: 22.02.2010
Сообщений: 326
|
![]()
Спасибо!
Да, нужно вводить только числа, но если ввести, например, 12.45 , то подстановки точки запятой не происходит, т.е. срабатывает другое событие (преобразование числа в дату), которое в итоге показывает число 16772,00. Подскажите пожалуйста, как отменить это событие, чтобы только работало событие кода: Код:
|
![]() |
![]() |
![]() |
#4 |
Форумчанин
Регистрация: 22.02.2010
Сообщений: 326
|
![]()
Если поставить перед числом знак апострофа, то вроде бы замена числа на дату не работает. Подскажите пожалуйста, как кодом отследить событие ввода числа в ячейку и по нажатию enter (завершение ввода) добавить апостроф перед введенным числом?
Спасибо! |
![]() |
![]() |
![]() |
#5 |
Старожил
Регистрация: 31.12.2010
Сообщений: 2,133
|
![]()
Обработчик события Worksheet_Change вызывается уже после того, как нажат Enter и значение преобразовано по алгоритму Excel - то есть когда "12.45" уже преобразовано в дату.
Однако, если установить ячейке текстовый формат ячейки (Ctrl+1 - Число - Текстовый), то Excel не будет преобразовывать введенный текст, и это можно сделать в обработчике: Код:
exceleved@yandex.ru Яндекс.Деньги: 410011500007619
|
![]() |
![]() |
![]() |
#6 |
Форумчанин
Регистрация: 22.02.2010
Сообщений: 326
|
![]()
Спасибо, работает!
Только на попытку удалить значение из ячейки А1 выходит сообщение MsgBox "Введено не число", vbExclamation. |
![]() |
![]() |
![]() |
#7 |
Старожил
Регистрация: 31.12.2010
Сообщений: 2,133
|
![]()
Добавил проверку на пустоту
Код:
exceleved@yandex.ru Яндекс.Деньги: 410011500007619
|
![]() |
![]() |
![]() |
#8 |
Форумчанин
Регистрация: 22.02.2010
Сообщений: 326
|
![]()
Спасибо большое!
|
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Создание новой строки (снизу) при вводе значения в ячейку | Z0RGE | Microsoft Office Excel | 2 | 17.04.2015 21:10 |
Автопереименование листа при вводе в ячейку и обратная процедура | w00t | Microsoft Office Excel | 1 | 31.01.2013 13:09 |
Получение значения при вводе определенного значения | armanmal | Microsoft Office Excel | 6 | 21.11.2011 17:30 |
ошибка про вводе текста через TextBox в ячейку листа | alvazor | Microsoft Office Excel | 3 | 21.09.2010 12:36 |
При вводе значения в ячейку нужно изменить ее размер | skobarka | Microsoft Office Excel | 2 | 26.09.2008 16:35 |