' ' Процедура главная :: начало ' Sub SetMyVars() ' ' SetMyVars Макрос ' ' Установка значений переменных ' Автор: wpvi.ru ' Находится здесь: https://wpvi.ru/fs/soft/word/setmyvars_ver102.txt ' Используется здесь: https://wpvi.ru/pages/soft/word/ ' Версия 1.02 от 20230612 ' Quest1 = "Добрый день, " & Application.UserName & " !" & Chr(13) & "Вы действительно хотите запустить процесс установки значений переменных?" Ans1 = MsgBox(Quest1, vbYesNo) If Ans1 = vbYes Then ' Запуск расчета rez1 = make_SetMyVars() Else ' Отказ от запуска расчета rez1 = decline_SetMyVars() End If Exit Sub End Sub ' ' Процедура главная :: завершение ' Public Function decline_SetMyVars() As Boolean MsgBox "Вы отказались от установки значений переменных!" task_done = False Exit Function End Function Public Function make_SetMyVars() As Boolean Dim varValue As String ' И в старую, и в новую переменную мы будем ставить одно и тоже значение, ' которое меняется 1 раз в секунду varValue = "Значение переменной, которое мы установили: " & Now() MsgBox "Вы согласились установить значения переменных!" ' Устанавливаем значение старой переменной ActiveDocument.FormFields("VAROLD1").TextInput.Default = varValue ActiveDocument.FormFields("VAROLD1").Result = ActiveDocument.FormFields("VAROLD1").TextInput.Default ' Устанавливаем значение новой переменной ActiveDocument.Variables.Item("VARNEW1").Value = varValue ' Обновляем, т.е. просто пытаемся автоматизировать ручную работу: CTRL-A, F9 ActiveDocument.Fields.Update task_done = True Exit Function End Function