игнорирование ввода на кирилице в Excel

Весь MS Office, программирование на Visual Basic for Applications и MS VB

Модератор: Naeel Maqsudov

Ответить
kooleer
Сообщения: 52
Зарегистрирован: 18 июн 2010, 15:52

Приветствую Вас форумчане.
У меня вот такой вопросик, возможно ли сделать так, чтобы в столбец вводились текстовые данные только на английском, а если пытались бы ввести кириллицу,то Excel бы ругался и не давал??
Подскажите кто сможет.
заранее спасибо))
Аватара пользователя
VictorM
Сообщения: 794
Зарегистрирован: 23 окт 2006, 01:44
Откуда: Lugansk, Ukraine
Контактная информация:

Смотрим: Как запретить ввод данных не являющихся цифрами ? и по аналогии делаем все что нам нужно
"Дайте людям рыбы, и вы накормите их на весь день;
научите их ловить рыбу - и вы накормите их на всю жизнь".
nilem
Сообщения: 112
Зарегистрирован: 14 ноя 2008, 01:59
Откуда: Уфа

Можно так попробовать. На кириллицу ругаться не будем, а просто отменяем ввод:

Код: Выделить всё

Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, [B1:B5]) Is Nothing Then Exit Sub
If LCase(Target) Like "*[а-я]*" Then
    With Application
        .EnableEvents = False: .Undo: .EnableEvents = True
    End With
End If
End Sub
kooleer
Сообщения: 52
Зарегистрирован: 18 июн 2010, 15:52

спасибо большое , что откликнулись на зов о помощи,но...
что то у меня ничего не получается :( ((((((
Ваш nilem макрос у меня не хочет работать((
а у вас VictorM по ссылке там работа с Userform
догнать чёт не могу((
попробую ещё раз обьяснить ситуацию.Мможет есть другой какой выход?
В xls файле, в столбце вводятся данные и должны они быть на латинеце, но бывает вводят их на кирилице, т.е. буква похожие( пример C англ. или С русск.)
Так вот хотелось бы, чтобы при вводе на русском, чтобы Excel не разришал такого рода ввод.
Гляньте плз ещё разок.
nilem
Сообщения: 112
Зарегистрирован: 14 ноя 2008, 01:59
Откуда: Уфа

kooleer писал(а):Ваш nilem макрос у меня не хочет работать((
Две самые вероятные причины:
1. Этот код должен быть в модуле листа (того листа, где вводим латиницу/кириллицу), проверяет ввод в ячейках В1:В5 (это для примера, можно записать любой другой диапазон)
Про модули листа и др. можно посмотреть здесь http://excel-vba.ru/Tips_What_Module.html
2. Не включены макросы. Как включить - здесь http://excel-vba.ru/Tips_Macro_Not_Work.html
Если все Ок, то должон работать.
kooleer
Сообщения: 52
Зарегистрирован: 18 июн 2010, 15:52

Огромное Вам спасибо nilem
Вы были правы, вставил макрос в лист и всё заработало.
Ответить