Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Word
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 11.10.2011, 13:02   #1
Алексей82
 
Регистрация: 26.02.2008
Сообщений: 7
По умолчанию Не открывается файл из Dialog

Здравствуйте.
Вот такой код:
Код:
With Dialogs(wdDialogFileOpen)
        .Display
        SelectedFileName = .Name
End With
Set wa = CreateObject("Word.Application")
Set wd = wa.Documents.Open(SelectedFileName)
выдаёт ошибку на последней строке, что нет такого файла для открытия. Открываются только файлы лежащие в той же папке, что и сам файл скрипта. Вероятно, потому что в SelectedFileName только имя файла, без пути.
А как получить путь? Или как то по другому нужно открывать?
Алексей82 вне форума Ответить с цитированием
Старый 11.10.2011, 17:43   #2
Пименов Александр
Форумчанин
 
Регистрация: 17.11.2010
Сообщений: 222
По умолчанию

1. Вместо .Display надо поставить .Show
2. Set wa = CreateObject("Word.Application") — этой строки не надо т.к. объект Word.Application уже создан
3. Set wd = wa.Documents.Open(SelectedFileName) — этой строки не надо, так как метод .Show открывает выбраный файл
4. Введите переменную Dim Doc as Document, тогда
Set Doc = Application.Documents(SelectedFileN ame)
Что и требовалось доказать
Пименов Александр вне форума Ответить с цитированием
Старый 11.10.2011, 17:44   #3
Пименов Александр
Форумчанин
 
Регистрация: 17.11.2010
Сообщений: 222
По умолчанию

Set Doc = Application.Documents(SelectedFileN ame)
Пименов Александр вне форума Ответить с цитированием
Старый 11.10.2011, 17:46   #4
Пименов Александр
Форумчанин
 
Регистрация: 17.11.2010
Сообщений: 222
По умолчанию

Set Doc = Application.Documents(SelectedFileName)
Пименов Александр вне форума Ответить с цитированием
Старый 12.10.2011, 11:02   #5
Алексей82
 
Регистрация: 26.02.2008
Сообщений: 7
По умолчанию

Премного благодарен, работает, за исключением случая, когда в названии файла есть пробелы. Тогда
Код:
Set Doc = Application.Documents(SelectedFileName)
насаживается со словами "Неверное имя файла". Это можно как-то побороть?
Алексей82 вне форума Ответить с цитированием
Старый 12.10.2011, 11:41   #6
Пименов Александр
Форумчанин
 
Регистрация: 17.11.2010
Сообщений: 222
По умолчанию

Dim doc As Document
Dim dlg As Dialog
Set dlg = Dialogs(wdDialogFileOpen)
With dlg
.Show
End With
SelectedFileName = ActiveDocument.Name
Set doc = Application.Documents(SelectedFileN ame)
Пименов Александр вне форума Ответить с цитированием
Старый 12.10.2011, 12:05   #7
Алексей82
 
Регистрация: 26.02.2008
Сообщений: 7
По умолчанию

Благодарю!
Алексей82 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Не открывается файл Полиграф Microsoft Office Excel 8 24.06.2011 10:48
Не открывается файл (С++) rtyzek Общие вопросы C/C++ 2 05.07.2010 23:45
Не открывается файл Эдвард Общие вопросы Delphi 0 20.08.2009 15:38
Файл помощи не открывается? PONKA Общие вопросы Delphi 12 01.09.2008 09:39
Не открывается файл Михаил Юрьевич Общие вопросы Delphi 10 29.02.2008 08:25