VbScript для сохранения текущего открытого документа Word - PullRequest
0 голосов
/ 02 мая 2011

Привет! Я хочу, чтобы vbscript сохранил текущий открытый документ Word, я использую код:

 Dim objWord As Object
    Set objWord = CreateObject("Word.Application")
    Set objDoc = objWord.Documents.Add()
    objDoc.Save

, но он открывает новый документ Word и затем просит меня сохранить.

Мое требование заключается в том, что я создал кнопку меню при ее нажатии, если документ уже сохранен в каком-либо месте, он должен сохранить внесенные изменения или, если это не так, он должен спросить меня путь и сохранить его там

Спасибо, Создатель

Ответы [ 4 ]

0 голосов
/ 27 сентября 2011

Я должен был сделать то же самое, и вот что я использовал:

' Create the File System Object
Set objFSO = CreateObject("Scripting.FileSystemObject")
'Check for directory folder.
If objFSO.FolderExists(strDirectory) Then
        Set objFolder = objFSO.GetFolder(strDirectory)
        Set objWord = CreateObject("Word.Application")
        objWord.Visible = True

        Set objDoc = objWord.Documents.Open(objFile.Path)
        objDoc.SaveAs objFSO.BuildPath(strDirectory, objFSO.GetFileName(objFile.Path))
        objDoc.Close
etc...

Вам нужно будет заполнить остальные и инициализировать переменные, но это рабочий код.

НТН,

Джеймс

0 голосов
/ 02 мая 2011

Попробуйте добавить следующий код:

Dim activeDoc
Set activeDoc = objWord.ActiveDocument
activeDoc.Save
0 голосов
/ 02 мая 2011

Вместо использования VBScript используйте макрос VBA, который будет запущен в процессе.Использование объекта "Application" предоставит вам доступ к текущему экземпляру Word, а ActiveDocument (сокращение от Application.ActiveDocument) даст вам доступ к текущему документу.

0 голосов
/ 02 мая 2011

objWord.Documents.Add означает создание нового документа.

Попробуйте: objDoc = objWord.ActiveDocument

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...