|
|
|
| Уважаемые участники форума, посоветуйте, что делать в такой ситуации: Имеется база данных, разработанная в Access 2003, с которой работают пользователи из Access 2003 и 2007. Одна из функций базы данных - формирование документов Word. Сформированный документ получает имя и сохраняется в определенном каталоге. До настоящего времени все отлично работало. Сейчас на компьютер одного из пользователей установили Windows 8 и на этом компьютере перестало работать сохранение документов (сами документы формируются нормально). Использую конструкцию:
ЭкземплярПриложения.ActiveDocument.SaveAs ПолноеИмяФайла
Реакция Word (версия 2007) следующая: открывается диалог сохранения сформированного файла с предложением сохранить его в каталог по умолчанию, а не заданный мной в переменной ПолноеИмяФайла, при этом поле имени файла остается пустым. Всю процедуру сохранения приходится проделывать вручную.
Я уже попробовала изменить каталог по умолчанию на мой каталог. В этом случае сохранения файла все равно не происходит, открывается диалог сохранения файла с предложением сохранить его в мой каталог, поле имени файла пустое. Что еще можно сделать? | |
|
| |
|
|
|
| попробывать записать макрос в ворде
(при записи макроса мышка может не работать)
и посмотреть что сам ворд пишет когда выполняет команду SaveAs
исходя из этого подкорректировать код | |
|
| |
|
|
|
| Спасибо за совет. Часто так делаю, когда не знаю, как использовать какие-нибудь методы. К сожалению, у меня сейчас в пределах досягаемости нет Windows 8, а сами пользователи не обладают достаточной квалификацией. Вечером получу доступ к компьютеру с Windows 7, но не знаю, повторится ли там эта ошибка.
Попробовала под Windows 7 (64x) с Office 2010 (86x) - ошибка не возникает. Значит скорее всего "виновата" именно Windows 8. | |
|
| |
|
|
|
| как я сохраняю
Dim docWord As Word.Document
Dim appWord As Word.Application
Set docWord = appWord.Documents.add
изменения в док...
docWord.ActiveWindow.ActivePane.Selection.Tables(1).Cell(5, 2).Range.InsertAfter .......
docWord.SaveAs ("\\serv2k\admkom\Приставу\" & Trim(Forms!СписокЗаявлений!номер1) & "_Приставу.doc")
Приведите полностью ваши команды | |
|
| |
|
|
|
| Приводить-то нечего. Осмелюсь предположить, что у Вас не Windows 8. Я также сохраняла документы. И все работало и под Windows Me, и под XP, и под семеркой. В Windows 8 не работает ни сама конструкция, ни макрорекордер (в части записи информации о сохранении файла). Кстати, не только у меня. Здесь аналогичная проблема обсуждалась и решение, кажется, не нашлось: http://www.planetaexcel.ru/forum/?PAGE_NAME=read&FID=1&TID=45953. | |
|
| |
|
|
|
| Попробовала записать макрос. НЕ ПИШЕТ ничего связанного с сохранением! Другие действия записываются, а сохранение - нет. ПОМОГИТЕ!!!!! | |
|
| |
|
|
|
| имя файла формируете программно? Как? | |
|
| |
|
|
|
| Формирую строку с полным именем файла - от литеры диска до расширения. Но проверено: не записывает, даже если указать явно имя файла без всякого пути для сохранения в место по умолчанию. В любом случае открывается диалог сохранения файла, поле имени файла остается пустым. | |
|
| |
|
|
|
| где код формирования имени файла и пути? | |
|
| |
|
|
|
| Скорее всего проблема с правами доступа.
Советы:
1.Не скрытая ли папка-адресат? (сделать видимой).
2.Попробуйте вставить обработчик ошибок
On error goto err1:
Ваш код
Exit sub
err1:
msgbox err.number & "(" & err.description & ")"
end sub
и посмотреть код ошибки.
3. Вы пишитие "Формирую строку с полным именем файла - от литеры диска до расширения".
Попробуйте абсолютный путь как предложила Helena. (Это не то же самое, что с литерой диска!) | |
|
| |
|
|
|
| Спасибо за ответ! Проверила следующие моменты:
Папки для сохранения файлов не скрыты.
Ошибка никакая не происходит. Просто при выполнении команды SaveAs игнорируются все параметры, которые я указываю.
Что касается пути к файлу, я пробовала указать просто имя файла без пути для сохранения в каталог по умолчанию, также ничего не вышло. Абсолютный путь обязательно попробую, но на успех не очень надеюсь. К сожалению, у меня возможность выйти на Windows 8 бывает не каждый день. | |
|
| |
|
|
|
| Уважаемые участники форума, мне пока не удалось решить проблему, но я, кажется, напала на след. Моя проблема обсуждалась здесь: http://social.msdn.microsoft.com/Forums/office/en-US/1b8282a5-1c3f-41d4-93dd-39d084fad13d/can-not-get-he-activedocumentsaveas2-method-to-work-on-word-2013 и было выявлено, что она возникает на компьютерах Acer.
Я обратилась к своим пользователям и узнала, что, действительно, у них новый компьютер -моноблок Acer. Однако после удаления всех программ, издателем которых является Acer, работоспособность макрорекордера не восстановилась.
После этого я провела эксперимент: установила на пустой диск Windows 8 и Ms Office 2007. Больше никаких программ не устанавливала. Сохранение работает абсолютно нормально. Значит скорее всего какие-то настройки Acer остались и конфликтуют с vba. Нужно будет еще поискать. | |
|
| |