Добрый день. Есть файл, в приложении, который нужно "запечатать" по определенным условиям. столбцы D, E, F, G нужно сделать так, что бы в ячейки этих столбцов можно было бы внести информацию только 1 раз, после ввода информации ее нельзя удалить или редактировать. H, I должны быть свободные для редактирования и изменений. Вокруг таблицы нужно заблокировать любые изменения. Соответственно вставка и удаление столбцов и строк тоже должно быть под запретом.
Если не затруднит, прошу поделиться инструментарием или материалом, который поможет в перспективе делать такие запреты. по стандартным подсказкам excel и быстрому поиску скупой набор функций, который не отвечает требованием задания.
Спасибо.
Добрый день. Есть файл, в приложении, который нужно "запечатать" по определенным условиям. столбцы D, E, F, G нужно сделать так, что бы в ячейки этих столбцов можно было бы внести информацию только 1 раз, после ввода информации ее нельзя удалить или редактировать. H, I должны быть свободные для редактирования и изменений. Вокруг таблицы нужно заблокировать любые изменения. Соответственно вставка и удаление столбцов и строк тоже должно быть под запретом.
Если не затруднит, прошу поделиться инструментарием или материалом, который поможет в перспективе делать такие запреты. по стандартным подсказкам excel и быстрому поиску скупой набор функций, который не отвечает требованием задания.
нужно сделать так, что бы в ячейки этих столбцов можно было бы внести информацию только 1 раз, после ввода информации ее нельзя удалить или редактировать
Полноценно это сделать не получится Средства Excel, в принципе не позволяют добиться такого результата, а макросом, хотя и можно, но достаточно отключить VBA - и можно будет редактировать
нужно сделать так, что бы в ячейки этих столбцов можно было бы внести информацию только 1 раз, после ввода информации ее нельзя удалить или редактировать
Полноценно это сделать не получится Средства Excel, в принципе не позволяют добиться такого результата, а макросом, хотя и можно, но достаточно отключить VBA - и можно будет редактироватьSerge_007
Тогда пишите макрос, который проверяет заполненность ячеек в нужных столбцах Если в ячейке пусто - разрешаем запись, иначе - алерт, типа "Руки прочь от заполненных ячеек!"
Только вот непонятно, если человек ошибся и внес неправильную информацию, но увидел это сам, сразу, то что он будет делать? Ведь макрос не даст ему исправить свою ошибку...
Тогда пишите макрос, который проверяет заполненность ячеек в нужных столбцах Если в ячейке пусто - разрешаем запись, иначе - алерт, типа "Руки прочь от заполненных ячеек!"
Только вот непонятно, если человек ошибся и внес неправильную информацию, но увидел это сам, сразу, то что он будет делать? Ведь макрос не даст ему исправить свою ошибку...Serge_007
Pelena, спс TurboRadost, вариант, в модуль листа [vba]
Код
Private Sub Worksheet_SelectionChange(ByVal Target As Range) If Target.Cells.Count > 1 Then Range("a1").Select Exit Sub End If a = Target.Value b = Target.Column If b > 3 And b < 7 And a <> "" Then c = Cells(Rows.Count, b).End(xlUp).Row + 1 Cells(c, b).Select MsgBox "Ячейка уже заполнена!" End If End Sub
[/vba]
Pelena, спс TurboRadost, вариант, в модуль листа [vba]
Код
Private Sub Worksheet_SelectionChange(ByVal Target As Range) If Target.Cells.Count > 1 Then Range("a1").Select Exit Sub End If a = Target.Value b = Target.Column If b > 3 And b < 7 And a <> "" Then c = Cells(Rows.Count, b).End(xlUp).Row + 1 Cells(c, b).Select MsgBox "Ячейка уже заполнена!" End If End Sub