У меня есть глобальная переменная, называемая флагом. Я могу получить доступ к флагам из каждого модуля в моем коде, но когда я назначу ему значение 1 в Sub Command97_Click(), по какой-то причине флаг не сохраняет значение Sub Form_BeforeUpdate (Cancel As Integer). Когда я печатаю флаг в Sub Form_BeforeUpdate, он больше не равен 1. Я знаю, что это глупо, но я новичок в vba ...Значение глобальной переменной VBA исчезает в другом подкатегории
Помните, что мой код делает больше, чем это, но я только сохраняю основную для моего вопроса.
Заранее благодарен!
Public flag As Integer
Private Sub Command97_Click()
flag = 1
End Sub
Private Sub Form_BeforeUpdate(Cancel As Integer)
If flag = 1 Then
DoCmd.RunCommand acCmdUndo
MsgBox "Flag = " & flag, vbInformation
Exit Sub
End If
End Sub
Поместите эту строку после того, как вы установили 'flag = 1' и пропустите ее, используя отладчик/F8:' Form_BeforeUpdate (False) '. Это приведет вас к другому подразделению, а значение для 'flag' должно быть 1. Сообщите мне, что произойдет. –