Как заблокировать запись Access 2010 после ее сохранения?

Как создать макрос для постоянной блокировки записи после ее сохранения?

Моя проблема: каждая команда блокировки Access 2010, которая делает сохраненные записи недоступными для редактирования, также блокирует поля формы "Новая запись", поэтому новые записи не могут быть добавлены в базу данных. Мне нужно заблокировать то, что было сохранено, и в то же время продолжать добавлять новые записи.

3 ответа

В Access 2010 и более поздних версиях то, что вы описали, очень просто реализовать с помощью макроса данных Before Change в таблице:

BeforeChange.png

Для получения дополнительной информации о макросах данных см.

Создать макрос данных

Если вы хотите заблокировать field1 попробуйте следующее:

Private Sub Field1_GotFocus ()  
    Если Me.Field1.Text  "" Тогда   
      Me.Field1.Locked = True  
    еще  
      Me.Field1.Locked = False  
    End If
End Sub

Поскольку вы запрашиваете решение VBA, вы должны использовать DoCmd.OpenTable а также acAdd как свойство datamode

Sub AddOnlyMode()    
    DoCmd.OpenTable "table1", acViewNormal, acAdd    
End Sub

Если вы выполните его, будет открыта существующая таблица с именем "table1". Вы не увидите старые существующие записи. Вы можете только добавлять новые записи и редактировать их до тех пор, пока вы не закроете таблицу.

Как только вы закроете таблицу (сохранение не достаточно), ваши записи будут заблокированы. Повторное открытие таблицы через VBA не будет отображать никаких записей.

Другие вопросы по тегам