Function GetWord As Variant
Dim application as Variant
Set GetWord = Nothing
On Error Goto CREATE_OBJECT
' сначала пытаемся открыть уже запущенный Microsoft Word
Set application = GetObject ("", "Word.Application")
On Error Goto ERR_HANDLE
EXIT_SUB:
Set GetWord = application
Exit Function
CREATE_OBJECT:
On Error Goto ERR_HANDLE
If Err = 208 Then
Err = 0
' "запуск" нового объекта Microsoft Word
Set application = CreateObject("Word.Application")
Resume Next
Else
Goto ERR_HANDLE
End If
ERR_HANDLE:
If Err = 208 Then
' возможно на этом компьютере Microsoft Word вообще не установлен или установлен криво, повреждён реестр Windows
Msgbox "Не удалось получить доступ к объекту Microsoft Word.", 64, "Внимание"
Else
' какая-то другая ошибка
Msgbox "Ошибка: " & Cstr(Err) & ". " & Error$ + ". Строка " + Cstr(Erl) + ".", 16, "Ошибка"
End If
Resume EXIT_SUB