Открытие документа Ворда кнопкой

mihajlo
Дата: 04.12.2006 02:45:37
Дело в том, что приходится иметь с чужой базой.
Есть там кнопка открытия отчета в ворде, т.е. банально создана кнопка, где в свойствах выставлено открывать Word. Однако, при попытке нажать на кнопку выскакивает сообщение "Invalid procedure call or argument" и запускается Visual Basic.

Вот весь код оттуда:

Option Compare Database

Private Sub Кнопка2_Click()
On Error GoTo Err_Кнопка2_Click

Dim oApp As Object

Set oApp = CreateObject("Word.Application")
oApp.Visible = True

Exit_Кнопка2_Click:
Exit Sub

Err_Кнопка2_Click:
MsgBox Err.Description
Resume Exit_Кнопка2_Click

End Sub


Не понимаю, где ошибка? Ведь сделана кнопка через Мастер. Кстати, если я создам свой, новый документ с кнопкой - будет тот же самый код и все работает...

Поиск по форуму юзал, к сожалению, ничего похожего не нашел.
Joss
Дата: 04.12.2006 10:58:04
А на какой строке программа ругается? Посмотрите, может у Вас какие-то ссылки отвалились? Попробуйте после
Set oApp = CreateObject("Word.Application")
надо добавить строку
oApp.Documents.Add
mihajlo
Дата: 04.12.2006 11:39:35
То же самое... При ошибке указатель помещается на строчку объявления ф-ции "Private Sub Кнопка2_Click()", выделена желтым становится.
Joss
Дата: 04.12.2006 11:45:09
Всё вроде должно работать. Надо глядеть саму базу. Она большая?
Ещё раз проверь ссылки. Попробуй скомпилировать программу. Попробуй сжать базу.
mihajlo
Дата: 04.12.2006 12:01:38
База небольшая, 145 кб :) тут: http://slil.ru/23512583
Честно говоря, сам первый раз сталкиваюсь с похожей проблемой. Не понимаю, почему она возникает, ведь при создании аналогичного функционала с нуля - все получается, кнопка работает, ворд открывает.

Смотреть форму "Документы"
Joss
Дата: 04.12.2006 13:12:25
Мда-а-а... А в каком Аксе ты работаешь? База создана в 2000 Аксе. Если ты работаешь в 2003 , то облом (С ХР не пробовал). Что-то они не совсем совместимы. Спасёт отца русской демократии полный импорт в чистую базу. Создай у себя чистую базу формата Акцеес 2000, а потом, Файл -> Внешние данные -> Импорт . Выбери "всё" на всех закладках и импортируй. После этого всё заработает.
Гаишник
Дата: 04.12.2006 13:37:18
Joss
Мда-а-а... А в каком Аксе ты работаешь? База создана в 2000 Аксе. Если ты работаешь в 2003 , то облом ...
С чего это? Пример пожалуйста
Joss
Дата: 04.12.2006 14:48:51
Гаишник
С чего это? Пример пожалуйста
Ссылка на пример приведена выше. Скачай, запусти, а потом выскажи свои соображения.
Старый ворчун
Дата: 04.12.2006 15:36:22
Joss
Гаишник
С чего это? Пример пожалуйста
Ссылка на пример приведена выше. Скачай, запусти, а потом выскажи свои соображения.


Скачал, поведение совершенно одинаково и в Access 2003 и в Access 2000.
Так что жду от вас (вас не коробит, что я вам выкаю?) других доказательств.

Приложен скорректированыый в Access 2000 файл, нормально работающий в Access 2003.
Joss
Дата: 04.12.2006 16:33:18
Старый ворчун
Скачал, поведение совершенно одинаково и в Access 2003 и в Access 2000.
Так что жду от вас (вас не коробит, что я вам выкаю?) других доказательств.
Можно узнать, доказательств чего? Вы запускали исходный файл и он у вас работал? Или он у Вас не работал?
Открываю выложенный пример. Написано - формат Access 2000. Создаю чистую базу в Access 2003 формата Access 2000. Импортирую туда всё из старой базы. Всё работает. Я говорил о конкретной базе, а не вообще о совместимости разных версий Акцесс. Спрашивающему нужен был ответ - что делать? Я подсказал. Что ещё от меня требуете?