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

Вход

Регистрация

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

 

= Мир MS Excel/Как защитить ячейки от Ctrl+V, стандартная защита позволяет - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_  
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Как защитить ячейки от Ctrl+V, стандартная защита позволяет (Макросы/Sub)
Как защитить ячейки от Ctrl+V, стандартная защита позволяет
Александр7034 Дата: Четверг, 11.08.2022, 15:46 | Сообщение № 1
Группа: Пользователи
Ранг: Новичок
Сообщений: 29
Репутация: 0 ±
Замечаний: 20% ±

Подскажите как защитить ячейки от вставления (Ctrl+V) недостоверной информации. В табеле примере должны вводиться только часы в диапазоне чисел 1-24 за апрель 2022 год с 1 по 30 число. Что бы вводили только часы, через проверку данных ввел ограничения ввода только 1-24, более того для ячеек 28-31 числа есть дополнительное условие не разрещающая ввод даже из этого диапазона если к примеру это февраль. Дополнительно стоит защита листа (пароль 1) Если не умничать и вводить ручками цифры то все работает как и задумано. Но если скопировать любую белиберду, и вставить в эти защищенные ячейки, то excel позволяет это, еще и форматирование ломается. Можно же защитить ячейки от этого, оставив только ручной ввод?
К сообщению приложен файл: __2022.xlsx(13.3 Kb)
 
Ответить
СообщениеПодскажите как защитить ячейки от вставления (Ctrl+V) недостоверной информации. В табеле примере должны вводиться только часы в диапазоне чисел 1-24 за апрель 2022 год с 1 по 30 число. Что бы вводили только часы, через проверку данных ввел ограничения ввода только 1-24, более того для ячеек 28-31 числа есть дополнительное условие не разрещающая ввод даже из этого диапазона если к примеру это февраль. Дополнительно стоит защита листа (пароль 1) Если не умничать и вводить ручками цифры то все работает как и задумано. Но если скопировать любую белиберду, и вставить в эти защищенные ячейки, то excel позволяет это, еще и форматирование ломается. Можно же защитить ячейки от этого, оставив только ручной ввод?

Автор - Александр7034
Дата добавления - 11.08.2022 в 15:46
Serge_007 Дата: Четверг, 11.08.2022, 16:38 | Сообщение № 2
Группа: Админы
Ранг: Местный житель
Сообщений: 15418
Репутация: 2538 ±
Замечаний: ±

Excel 2016
Цитата Александр7034, 11.08.2022 в 15:46, в сообщении № 1 ()
Можно же защитить ячейки от этого, оставив только ручной ввод?
Средствами Excel - нет
Если спрятать лист и заполнять его через форму VBA - да, можно


ЮMoney:41001419691823 | WMR:126292472390
 
Ответить
Сообщение
Цитата Александр7034, 11.08.2022 в 15:46, в сообщении № 1 ()
Можно же защитить ячейки от этого, оставив только ручной ввод?
Средствами Excel - нет
Если спрятать лист и заполнять его через форму VBA - да, можно

Автор - Serge_007
Дата добавления - 11.08.2022 в 16:38
_Boroda_ Дата: Четверг, 11.08.2022, 17:10 | Сообщение № 3
Группа: Модераторы
Ранг: Местный житель
Сообщений: 16367
Репутация: 6355 ±
Замечаний: 0% ±

2003; 2007; 2010; 2013 RUS
Не то, что прям уж совсем отличное решение, но можно так в модуль листа написать (правой мышью на имя листа - Просмотреть код - вылезет как раз то, что нужно)

[vba]
Код
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    If Not Intersect(Target, Range("A1:AE9")) Is Nothing Then
        Application.CutCopyMode = False
    End If
End Sub
[/vba]


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

[vba]
Код
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    If Not Intersect(Target, Range("A1:AE9")) Is Nothing Then
        Application.CutCopyMode = False
    End If
End Sub
[/vba]

Автор - _Boroda_
Дата добавления - 11.08.2022 в 17:10
Александр7034 Дата: Пятница, 12.08.2022, 13:41 | Сообщение № 4
Группа: Пользователи
Ранг: Новичок
Сообщений: 29
Репутация: 0 ±
Замечаний: 20% ±

Не то, что прям уж совсем отличное решение, но можно так в модуль листа написать (правой мышью на имя листа - Просмотреть код - вылезет как раз то, что нужно)

Помогло но наполовину. Если скопировать ячейки excel то их действительно вставить на защищенный лист не получится. А вот если скопировать что то иное, текст с сайта к примеру, то он без проблем вставится в защищенные ячейки.
 
Ответить
Сообщение
Не то, что прям уж совсем отличное решение, но можно так в модуль листа написать (правой мышью на имя листа - Просмотреть код - вылезет как раз то, что нужно)

Помогло но наполовину. Если скопировать ячейки excel то их действительно вставить на защищенный лист не получится. А вот если скопировать что то иное, текст с сайта к примеру, то он без проблем вставится в защищенные ячейки.

Автор - Александр7034
Дата добавления - 12.08.2022 в 13:41
Serge_007 Дата: Пятница, 12.08.2022, 13:44 | Сообщение № 5
Группа: Админы
Ранг: Местный житель
Сообщений: 15418
Репутация: 2538 ±
Замечаний: ±

Excel 2016
Цитата Александр7034, 12.08.2022 в 13:41, в сообщении № 4 ()
без проблем вставится в защищенные ячейки
Если спрятать лист и заполнять его через форму VBA - да, можно


ЮMoney:41001419691823 | WMR:126292472390
 
Ответить
Сообщение
Цитата Александр7034, 12.08.2022 в 13:41, в сообщении № 4 ()
без проблем вставится в защищенные ячейки
Если спрятать лист и заполнять его через форму VBA - да, можно

Автор - Serge_007
Дата добавления - 12.08.2022 в 13:44
Александр7034 Дата: Пятница, 12.08.2022, 14:30 | Сообщение № 6
Группа: Пользователи
Ранг: Новичок
Сообщений: 29
Репутация: 0 ±
Замечаний: 20% ±

Через форму VBA - я не знаю как. Да и весь проект с формулами привязками ссылками уже сделан на табличках excel, через форму наверное еще и перелопатить многое придется.
 
Ответить
СообщениеЧерез форму VBA - я не знаю как. Да и весь проект с формулами привязками ссылками уже сделан на табличках excel, через форму наверное еще и перелопатить многое придется.

Автор - Александр7034
Дата добавления - 12.08.2022 в 14:30
Serge_007 Дата: Пятница, 12.08.2022, 15:11 | Сообщение № 7
Группа: Админы
Ранг: Местный житель
Сообщений: 15418
Репутация: 2538 ±
Замечаний: ±

Excel 2016
Проект можно оставить "как есть", через форму заполнять только исходные данные


ЮMoney:41001419691823 | WMR:126292472390
 
Ответить
СообщениеПроект можно оставить "как есть", через форму заполнять только исходные данные

Автор - Serge_007
Дата добавления - 12.08.2022 в 15:11
_Boroda_ Дата: Пятница, 12.08.2022, 15:37 | Сообщение № 8
Группа: Модераторы
Ранг: Местный житель
Сообщений: 16367
Репутация: 6355 ±
Замечаний: 0% ±

2003; 2007; 2010; 2013 RUS
Цитата Александр7034, 12.08.2022 в 13:41, в сообщении № 4 ()
А вот если скопировать что то иное, текст с сайта к примеру, то он без проблем вставится в защищенные ячейки.


А так?
[vba]
Код
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    If Not Intersect(Target, Range("A1:AE9")) Is Nothing Then
        With GetObject("New:{1C3B4210-F441-11CE-B9EA-00AA006B1A69}")
            .SetText Empty
            .PutInClipboard
        End With
    End If
End Sub
[/vba]


Скажи мне, кудесник, любимец ба’гов...
Платная помощь:
Boroda_Excel@mail.ru
Яндекс-деньги: 41001632713405 | Webmoney: R289877159277; Z102172301748; E177867141995
 
Ответить
Сообщение
Цитата Александр7034, 12.08.2022 в 13:41, в сообщении № 4 ()
А вот если скопировать что то иное, текст с сайта к примеру, то он без проблем вставится в защищенные ячейки.


А так?
[vba]
Код
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    If Not Intersect(Target, Range("A1:AE9")) Is Nothing Then
        With GetObject("New:{1C3B4210-F441-11CE-B9EA-00AA006B1A69}")
            .SetText Empty
            .PutInClipboard
        End With
    End If
End Sub
[/vba]

Автор - _Boroda_
Дата добавления - 12.08.2022 в 15:37
Александр7034 Дата: Пятница, 12.08.2022, 15:50 | Сообщение № 9
Группа: Пользователи
Ранг: Новичок
Сообщений: 29
Репутация: 0 ±
Замечаний: 20% ±

пол
А так?

Да уже ни что не вставишь.
А что за строка такая в коде? 1C3B4210-F441-11CE-B9EA-00AA006B1A69
 
Ответить
Сообщениепол
А так?

Да уже ни что не вставишь.
А что за строка такая в коде? 1C3B4210-F441-11CE-B9EA-00AA006B1A69

Автор - Александр7034
Дата добавления - 12.08.2022 в 15:50
_Boroda_ Дата: Пятница, 12.08.2022, 16:10 | Сообщение № 10
Группа: Модераторы
Ранг: Местный житель
Сообщений: 16367
Репутация: 6355 ±
Замечаний: 0% ±

2003; 2007; 2010; 2013 RUS
Ссылка на ветку реестра с нужной нам библиотекой


Скажи мне, кудесник, любимец ба’гов...
Платная помощь:
Boroda_Excel@mail.ru
Яндекс-деньги: 41001632713405 | Webmoney: R289877159277; Z102172301748; E177867141995
 
Ответить
СообщениеСсылка на ветку реестра с нужной нам библиотекой

Автор - _Boroda_
Дата добавления - 12.08.2022 в 16:10
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Как защитить ячейки от Ctrl+V, стандартная защита позволяет (Макросы/Sub)
  • Страница 1 из 1
  • 1
Поиск:

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