.NET нас испортил :)
Ваша декларация недействительна для VBA.
Только константе могут быть присвоены значения при загрузке приложения. Вы объявляете их так:
Public Const APOSTROPHE_KEYCODE = 222
Вот пример объявления из одного из моих проектов VBA:
Если вы ищете что-то, где вы объявляете открытую переменную, а затем хотите инициализировать ее значение, вам нужно создать подпрограмму Workbook_Open и выполнить там инициализацию.
Пример:
Private Sub Workbook_Open()
Dim iAnswer As Integer
InitializeListSheetDataColumns_S
HideAllMonths_S
If sheetSetupInfo.Range("D6").Value = "Enter Facility Name" Then
iAnswer = MsgBox("It appears you have not yet set up this workbook. Would you like to do so now?", vbYesNo)
If iAnswer = vbYes Then
sheetSetupInfo.Activate
sheetSetupInfo.Range("D6").Select
Exit Sub
End If
End If
Application.Calculation = xlCalculationAutomatic
sheetGeneralInfo.Activate
Load frmInfoSheet
frmInfoSheet.Show
End Sub
Убедитесь, что вы объявляете подпрограмму в самом объекте рабочей книги: