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

Вход

Регистрация

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

 

= Мир MS Excel/Запретить ввод в ячейку (знаков:=,-,. слова нет) - Мир MS Excel

Регистрация · Логин: · Пароль: · · Забыли пароль?
Страница 1 из 212»
Модератор форума: _Boroda_, Pelena, Manyasha, SLAVICK 
Мир MS Excel » Вопросы и решения » Вопросы по Excel » Запретить ввод в ячейку (знаков:=,-,. слова нет) (Формулы/Formulas)
Запретить ввод в ячейку (знаков:=,-,. слова нет)
Mark1976 Дата: Суббота, 03.09.2016, 14:33 | Сообщение № 1
Группа: Проверенные
Ранг: Обитатель
Сообщений: 418
Репутация: 0 ±
Замечаний: 0% ±

Excel 2007
Приветствую всех. Отправляю в АУ файлик с мониторингом. Каждый раз внизу указываю, что запрещено вводить числа в таком виде как: 20= или 20-00 или 20.00, а также если цены нет слова НЕТ не писать. Но все равно они умудряются это делать. Данные я систематизирую в другую сводную таблицу с формулами. И если там стоят = или - или точка, то формулы не считаются. Может кто знает как запретить ввод таких значений. Уже устал коллегам про это говорить. Заранее спасибо.
К сообщению приложен файл: __.xls(32Kb)
 
Ответить
СообщениеПриветствую всех. Отправляю в АУ файлик с мониторингом. Каждый раз внизу указываю, что запрещено вводить числа в таком виде как: 20= или 20-00 или 20.00, а также если цены нет слова НЕТ не писать. Но все равно они умудряются это делать. Данные я систематизирую в другую сводную таблицу с формулами. И если там стоят = или - или точка, то формулы не считаются. Может кто знает как запретить ввод таких значений. Уже устал коллегам про это говорить. Заранее спасибо.

Автор - Mark1976
Дата добавления - 03.09.2016 в 14:33
китин Дата: Суббота, 03.09.2016, 15:04 | Сообщение № 2
Группа: Друзья
Ранг: Участник клуба
Сообщений: 4345
Репутация: 689 ±
Замечаний: 0% ±

Excel 2007;Excel 2010
не знаю так надо или нет? в файле поиграетесь с колонкой F. Если чё в проверке данных формула
Код
=ИЛИ(ЕЧИСЛО(ПОИСК(",";F3));ЕПУСТО(F3))
К сообщению приложен файл: 321654.xls(38Kb)


Не судите строго:я пытаюсь научиться
ЯД 41001877306852/WM R249698041931; Z239672726538
 
Ответить
Сообщениене знаю так надо или нет? в файле поиграетесь с колонкой F. Если чё в проверке данных формула
Код
=ИЛИ(ЕЧИСЛО(ПОИСК(",";F3));ЕПУСТО(F3))

Автор - китин
Дата добавления - 03.09.2016 в 15:04
Udik Дата: Суббота, 03.09.2016, 15:46 | Сообщение № 3
Группа: Друзья
Ранг: Старожил
Сообщений: 1589
Репутация: 192 ±
Замечаний: 0% ±

Excel 2016 х 64
можно через макрос в модуле листа
[vba]
Код

Private Sub Worksheet_Change(ByVal Target As Range)
Dim rng1 As Range
Dim str1 As String

str1 = "*[-=.]*"
Set rng1 = Range("d2:f16")
If Target.Cells.Count > 1 Then Exit Sub
If Intersect(Target, rng1) Is Nothing Then Exit Sub
If Target Like str1 Then
Application.Undo
MsgBox "Нельзя вводить -=.", 48, "Запрещённый символ"
End If
End Sub

[/vba]
К сообщению приложен файл: 0t.xls(46Kb)


вот вам барабан
яд 41001231307558 wm R419131876897
udik1968@gmail.com


Сообщение отредактировал Udik - Суббота, 03.09.2016, 15:58
 
Ответить
Сообщениеможно через макрос в модуле листа
[vba]
Код

Private Sub Worksheet_Change(ByVal Target As Range)
Dim rng1 As Range
Dim str1 As String

str1 = "*[-=.]*"
Set rng1 = Range("d2:f16")
If Target.Cells.Count > 1 Then Exit Sub
If Intersect(Target, rng1) Is Nothing Then Exit Sub
If Target Like str1 Then
Application.Undo
MsgBox "Нельзя вводить -=.", 48, "Запрещённый символ"
End If
End Sub

[/vba]

Автор - Udik
Дата добавления - 03.09.2016 в 15:46
Mark1976 Дата: Суббота, 03.09.2016, 15:55 | Сообщение № 4
Группа: Проверенные
Ранг: Обитатель
Сообщений: 418
Репутация: 0 ±
Замечаний: 0% ±

Excel 2007
Udik, привет. У меня не срабатывает. Ввожу 25= или 25.00 ничего не происходит.
 
Ответить
СообщениеUdik, привет. У меня не срабатывает. Ввожу 25= или 25.00 ничего не происходит.

Автор - Mark1976
Дата добавления - 03.09.2016 в 15:55
Mark1976 Дата: Суббота, 03.09.2016, 15:58 | Сообщение № 5
Группа: Проверенные
Ранг: Обитатель
Сообщений: 418
Репутация: 0 ±
Замечаний: 0% ±

Excel 2007
китин, спасибо. ввожу 25,00 выходит ошибка, ввожу 25= выходит ошибка, ввожу 25 выходит ошибка. на любое значение ошибка.
 
Ответить
Сообщениекитин, спасибо. ввожу 25,00 выходит ошибка, ввожу 25= выходит ошибка, ввожу 25 выходит ошибка. на любое значение ошибка.

Автор - Mark1976
Дата добавления - 03.09.2016 в 15:58
Udik Дата: Суббота, 03.09.2016, 16:00 | Сообщение № 6
Группа: Друзья
Ранг: Старожил
Сообщений: 1589
Репутация: 192 ±
Замечаний: 0% ±

Excel 2016 х 64
Ввожу 25= или 25.00 ничего не происходит.

Исправил, попробуйте сейчас, файл перезалил.


вот вам барабан
яд 41001231307558 wm R419131876897
udik1968@gmail.com


Сообщение отредактировал Udik - Суббота, 03.09.2016, 16:01
 
Ответить
Сообщение
Ввожу 25= или 25.00 ничего не происходит.

Исправил, попробуйте сейчас, файл перезалил.

Автор - Udik
Дата добавления - 03.09.2016 в 16:00
Mark1976 Дата: Суббота, 03.09.2016, 16:01 | Сообщение № 7
Группа: Проверенные
Ранг: Обитатель
Сообщений: 418
Репутация: 0 ±
Замечаний: 0% ±

Excel 2007
Udik, макрос из предыдущего поста?


Сообщение отредактировал Mark1976 - Суббота, 03.09.2016, 16:03
 
Ответить
СообщениеUdik, макрос из предыдущего поста?

Автор - Mark1976
Дата добавления - 03.09.2016 в 16:01
Udik Дата: Суббота, 03.09.2016, 16:02 | Сообщение № 8
Группа: Друзья
Ранг: Старожил
Сообщений: 1589
Репутация: 192 ±
Замечаний: 0% ±

Excel 2016 х 64
формула новая будет?

Какая формула?


вот вам барабан
яд 41001231307558 wm R419131876897
udik1968@gmail.com
 
Ответить
Сообщение
формула новая будет?

Какая формула?

Автор - Udik
Дата добавления - 03.09.2016 в 16:02
Mark1976 Дата: Суббота, 03.09.2016, 16:06 | Сообщение № 9
Группа: Проверенные
Ранг: Обитатель
Сообщений: 418
Репутация: 0 ±
Замечаний: 0% ±

Excel 2007
Udik, я ошибся. Я про макрос хотел сказал. Скачал новый файл, все работает. Спасибо.
 
Ответить
СообщениеUdik, я ошибся. Я про макрос хотел сказал. Скачал новый файл, все работает. Спасибо.

Автор - Mark1976
Дата добавления - 03.09.2016 в 16:06
Mark1976 Дата: Суббота, 03.09.2016, 16:09 | Сообщение № 10
Группа: Проверенные
Ранг: Обитатель
Сообщений: 418
Репутация: 0 ±
Замечаний: 0% ±

Excel 2007
Udik, спасибо. Главное, чтобы опен офис понял этот макрос.
 
Ответить
СообщениеUdik, спасибо. Главное, чтобы опен офис понял этот макрос.

Автор - Mark1976
Дата добавления - 03.09.2016 в 16:09
Mark1976 Дата: Суббота, 03.09.2016, 16:12 | Сообщение № 11
Группа: Проверенные
Ранг: Обитатель
Сообщений: 418
Репутация: 0 ±
Замечаний: 0% ±

Excel 2007
Udik, есть прикол. ввожу в колонку E9 12-20 получил 44 166,00. Что это может быть?
 
Ответить
СообщениеUdik, есть прикол. ввожу в колонку E9 12-20 получил 44 166,00. Что это может быть?

Автор - Mark1976
Дата добавления - 03.09.2016 в 16:12
Udik Дата: Суббота, 03.09.2016, 16:26 | Сообщение № 12
Группа: Друзья
Ранг: Старожил
Сообщений: 1589
Репутация: 192 ±
Замечаний: 0% ±

Excel 2016 х 64
вожу в колонку E9 12-20 получил 44 166,00.

Измените формат ячеек на Общий. :) .


вот вам барабан
яд 41001231307558 wm R419131876897
udik1968@gmail.com
 
Ответить
Сообщение
вожу в колонку E9 12-20 получил 44 166,00.

Измените формат ячеек на Общий. :) .

Автор - Udik
Дата добавления - 03.09.2016 в 16:26
Mark1976 Дата: Суббота, 03.09.2016, 16:31 | Сообщение № 13
Группа: Проверенные
Ранг: Обитатель
Сообщений: 418
Репутация: 0 ±
Замечаний: 0% ±

Excel 2007
Udik, СПАСИБО!!!
 
Ответить
СообщениеUdik, СПАСИБО!!!

Автор - Mark1976
Дата добавления - 03.09.2016 в 16:31
Mark1976 Дата: Суббота, 03.09.2016, 16:38 | Сообщение № 14
Группа: Проверенные
Ранг: Обитатель
Сообщений: 418
Репутация: 0 ±
Замечаний: 0% ±

Excel 2007
Добавил НЕТ.
[vba]
Код
Private Sub Worksheet_Change(ByVal Target As Range)
Dim rng1 As Range
Dim str1 As String

str1 = "*[-=.нет]*"
Set rng1 = Range("d2:f16")
If Target.Cells.Count > 1 Then Exit Sub
If Intersect(Target, rng1) Is Nothing Then Exit Sub
If Target Like str1 Then
Application.Undo
MsgBox "Нельзя вводить -=.нет", 48, "Запрещённый символ"
End If
End Sub
[/vba]
 
Ответить
СообщениеДобавил НЕТ.
[vba]
Код
Private Sub Worksheet_Change(ByVal Target As Range)
Dim rng1 As Range
Dim str1 As String

str1 = "*[-=.нет]*"
Set rng1 = Range("d2:f16")
If Target.Cells.Count > 1 Then Exit Sub
If Intersect(Target, rng1) Is Nothing Then Exit Sub
If Target Like str1 Then
Application.Undo
MsgBox "Нельзя вводить -=.нет", 48, "Запрещённый символ"
End If
End Sub
[/vba]

Автор - Mark1976
Дата добавления - 03.09.2016 в 16:38
Udik Дата: Суббота, 03.09.2016, 16:49 | Сообщение № 15
Группа: Друзья
Ранг: Старожил
Сообщений: 1589
Репутация: 192 ±
Замечаний: 0% ±

Excel 2016 х 64
Для нет надо по-другому, иначе будет реагировать на любой из символов етн
[vba]
Код

Private Sub Worksheet_Change(ByVal Target As Range)
Dim rng1 As Range
Dim str1 As String

str1 = "*[-=.]*"
Set rng1 = Range("d2:f16")
If Target.Cells.Count > 1 Then Exit Sub
If Intersect(Target, rng1) Is Nothing Then Exit Sub
If Target Like str1 Or UCase(Target) Like "НЕТ" Then
Application.Undo
MsgBox "Нельзя вводить -=. слово НЕТ", 48, "Запрещённый символ"
End If
End Sub
[/vba]
К сообщению приложен файл: 6084656.xls(47Kb)


вот вам барабан
яд 41001231307558 wm R419131876897
udik1968@gmail.com
 
Ответить
СообщениеДля нет надо по-другому, иначе будет реагировать на любой из символов етн
[vba]
Код

Private Sub Worksheet_Change(ByVal Target As Range)
Dim rng1 As Range
Dim str1 As String

str1 = "*[-=.]*"
Set rng1 = Range("d2:f16")
If Target.Cells.Count > 1 Then Exit Sub
If Intersect(Target, rng1) Is Nothing Then Exit Sub
If Target Like str1 Or UCase(Target) Like "НЕТ" Then
Application.Undo
MsgBox "Нельзя вводить -=. слово НЕТ", 48, "Запрещённый символ"
End If
End Sub
[/vba]

Автор - Udik
Дата добавления - 03.09.2016 в 16:49
Mark1976 Дата: Суббота, 03.09.2016, 17:00 | Сообщение № 16
Группа: Проверенные
Ранг: Обитатель
Сообщений: 418
Репутация: 0 ±
Замечаний: 0% ±

Excel 2007
Udik, спасибо. Напишу про реакцию коллег...:)
 
Ответить
СообщениеUdik, спасибо. Напишу про реакцию коллег...:)

Автор - Mark1976
Дата добавления - 03.09.2016 в 17:00
_Boroda_ Дата: Суббота, 03.09.2016, 17:55 | Сообщение № 17
Группа: Модераторы
Ранг: Местный житель
Сообщений: 11541
Репутация: 4750 ±
Замечаний: 0% ±

2003; 2007; 2010; 2013 RUS
Николай, если Ваши коллеги из АУ такие тупорылые, то макрос точно не поможет - они просто не будут нажимать "Разрешить макросы" и всё. Можно, конечно, сделать отдельный лист с большими буквами "Разреши макросы"; при открытии файла будет виден только он, а после разрешения макросов этот лист скрывается, а лист с таблицей становится доступным. Но зачем?

Можно сделать проверку данных на действительное число (см. файл)

Хотя я бы не морочился - на любую хитрую резьбу свой болт найдется, а просто в результирующей таблице делал бы перевод таких значений в нормальные числовые.
Например, функцией ПОДСТАВИТЬ:
Код
=--ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(D2;"=";",");"-";",");".";",")


Или макросом тоже можно, но не в момент ввода АУ-шниками, а один раз запускать макрос преобразования "=" "-" "." в "," уже у себя после получения Вами файла.
К сообщению приложен файл: 87665.xls(39Kb)


Скажи мне, кудесник, любимец ба’гов...
Платная помощь:
Boroda_Excel@mail.ru
Яндекс-деньги: 41001632713405 | Webmoney: R289877159277; Z102172301748; E177867141995
 
Ответить
СообщениеНиколай, если Ваши коллеги из АУ такие тупорылые, то макрос точно не поможет - они просто не будут нажимать "Разрешить макросы" и всё. Можно, конечно, сделать отдельный лист с большими буквами "Разреши макросы"; при открытии файла будет виден только он, а после разрешения макросов этот лист скрывается, а лист с таблицей становится доступным. Но зачем?

Можно сделать проверку данных на действительное число (см. файл)

Хотя я бы не морочился - на любую хитрую резьбу свой болт найдется, а просто в результирующей таблице делал бы перевод таких значений в нормальные числовые.
Например, функцией ПОДСТАВИТЬ:
Код
=--ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(D2;"=";",");"-";",");".";",")


Или макросом тоже можно, но не в момент ввода АУ-шниками, а один раз запускать макрос преобразования "=" "-" "." в "," уже у себя после получения Вами файла.

Автор - _Boroda_
Дата добавления - 03.09.2016 в 17:55
Mark1976 Дата: Суббота, 03.09.2016, 18:11 | Сообщение № 18
Группа: Проверенные
Ранг: Обитатель
Сообщений: 418
Репутация: 0 ±
Замечаний: 0% ±

Excel 2007
_Boroda_, спасибо. Вот, что получается. Ввожу 5=50, ругается, потом ставится число 43952. Ввожу 5-50, вводится май.50. Формат ячеек общий.
 
Ответить
Сообщение_Boroda_, спасибо. Вот, что получается. Ввожу 5=50, ругается, потом ставится число 43952. Ввожу 5-50, вводится май.50. Формат ячеек общий.

Автор - Mark1976
Дата добавления - 03.09.2016 в 18:11
Mark1976 Дата: Суббота, 03.09.2016, 18:14 | Сообщение № 19
Группа: Проверенные
Ранг: Обитатель
Сообщений: 418
Репутация: 0 ±
Замечаний: 0% ±

Excel 2007
_Boroda_, сорь за глупый вопрос, но если у меня диапазон расширится как тогда быть? Формула прописывается в каждую ячейку? Я просто в D2 не вижу формулы.
 
Ответить
Сообщение_Boroda_, сорь за глупый вопрос, но если у меня диапазон расширится как тогда быть? Формула прописывается в каждую ячейку? Я просто в D2 не вижу формулы.

Автор - Mark1976
Дата добавления - 03.09.2016 в 18:14
Mark1976 Дата: Суббота, 03.09.2016, 18:16 | Сообщение № 20
Группа: Проверенные
Ранг: Обитатель
Сообщений: 418
Репутация: 0 ±
Замечаний: 0% ±

Excel 2007
Николай, если Ваши коллеги из АУ такие тупорылые

Поверьте и такие встречаются. Из месяца в месяц борюсь с этим. Вот и назрела такая тема.
 
Ответить
Сообщение
Николай, если Ваши коллеги из АУ такие тупорылые

Поверьте и такие встречаются. Из месяца в месяц борюсь с этим. Вот и назрела такая тема.

Автор - Mark1976
Дата добавления - 03.09.2016 в 18:16
Мир MS Excel » Вопросы и решения » Вопросы по Excel » Запретить ввод в ячейку (знаков:=,-,. слова нет) (Формулы/Formulas)
Страница 1 из 212»
Поиск:

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