Возможно объявление глобальной переменной в Word, что бы она была доступна в одном модуле?
Например
Спойлер
sub M1
Объявление глобальной переменной А1
Объявление глобальной переменной В1
end sub
________________________________________
sub M2
MsgBox "А1" ' Вызов глобальной переменной А1
end sub
_________________________________________
sub M2
MsgBox "B1" ' Вызов глобальной переменной B1
end sub
Да, в VBA можно создать глобальную переменную, которая будет видна только в одном модуле. Для этого надо создать переменную в самом верху модуля, не внутри процедуры. И нужно указать слово "Private":
Private A1
Private B1
Sub макрос()
A1 = "это переменная A1"
B1 = "это переменная B1"
Debug.Print A1
Debug.Print B1
End Sub
PS. Вместо слова "Private" можно использовать слово "Dim". Но в этом случае тяжелее читать код, т.к. надо вспоминать, видна эта переменная внутри модуля или видна во всём проекте. Тяжело будет вспомнить, т.к. вы каждый день не будете создавать глобальные переменные и со временем начнёте забывать детали. А слова "private" чётко даёт понять, что из себя представляет переменная.
Понятно.
Возможно, чтобы переменная А1 получила данные в Макрос_1, а потом использовала бы эти данные в макрос_2 и т.п.?
Макрос 1 и макрос 2 находятся в одном модуле?
да
В макросе 1 запишите данные в глобальную переменную. Затем в макросе 2 прочитайте данные из глобальной переменной.
PS. В вашем случае удобнее использовать термин "модульная переменная", а не "глобальная". Тау удобнее обсуждать.
Спасибо.