Сохранить ТОЛЬКО при добавлении новой записи
Я только попытался добавить objExcel.ActiveWorkbook.Close False Не сработало.Я все еще получаю сообщение Сохранить, даже если я только запрашиваю базу данных
Есть две части сценария.Первый просто позволяет мне увидеть слово, связанное с кодом.Вторая часть позволяет мне создать новое слово и назначить следующий кодовый номер (последовательный).Там не так много кода, поэтому я показываю здесь оба модуля.
Private Sub Worksheet_Change (ByVal Target As Range) 'ActiveSheet.Unprotect Password: = "wood3481"' Range ("c3: g10000"). Locked =True Dim PW как диапазон, если Target.Address <> "$ C $ 3", затем выйдите из Sub Application.EnableEvents = False. Установите PW = Sheet1.Columns (6) .Find (Target) Если не PW, то ничто, тогда [D3] = PW.Смещение (, 1) Иначе MsgBox «Не найдено» End If 'ActiveSheet.Protect Password: = "wood3481" Range ("C3"). Выберите Application.EnableEvents = True' Все ячейки заблокированы, кроме C3, D3 и D4, которыенеобходимо изменить их с помощью сценария «Дополнительно». Диапазон хранения данных (g2: f10000) заблокирован, чтобы позволить сценарию выполнить End Sub
Private Sub CommandButton21_Click () 'Этот сценарий записывает новый пароль Рабочие листы ("sheet1"). Активировать Dim id Dim idnew Dim pswd 'Снять защиту с таблицы, чтобы разрешить изменение' ActiveSheet.Unprotect Password: =" vfgtrfd "pswd = Application.InputBox (" Введите новый пароль ") 'Найти конец thСтолбец с кодами паролей Range ("f1"). End (xlDown) .Select 'Запомнить последний присвоенный код id = ActiveCell.Value' Переместиться вниз на 1 ячейку, где будет храниться новый код. ActiveCell.Offset (1, 0) .Select'Записать новый код в базу данных ActiveCell.Value = id + 1 idnew = ActiveCell.Value ActiveCell.Offset (0, 1). Выбрать ActiveCell.Value = pswd MsgBox ("Вот ваш новый идентификатор пароля:" & idnew) Range ("c4 "). Value = idnew 'Range (" c4 "). Locked = True' Защитить электронную таблицу перед возвратом незаблокированной ячейки. 'ActiveSheet.Protect Password: =" vfgrfdr "' Переместить курсор назад к диапазону входных ячеек (" c3 ").Выберите
End Sub
.