自动打开已打开的Word文档->另存为

本文关键字:另存为 文档 Word | 更新日期: 2023-09-27 18:04:32

是否有可能对已经在Word中打开的文档自动进行另存为过程?我在filemaker数据库和word文档之间使用OLE链接。文档被触发从FileMaker中打开,但现在我需要编写一小段代码(c#)来自动执行另存为过程并关闭Word。这是可能的吗?或者自动化处理的文档必须由自动化脚本打开吗?

自动打开已打开的Word文档->另存为

是的,但这取决于你想要达到的目标。

我对Word的normal做了类似的操作。点文件自动运行一个宏在每个打开的Word文档(学生下载工作文件),这样他们就"被迫"将他们的工作保存到适当的工作文件夹。否则,默认总是windows的临时文件夹。您可以理解,如果不SAVE As并处理文档,则将所有工作保存在文件的临时副本上,当您注销时,整个文件将丢失!

如果这与你想要的内容相似,请执行以下操作:

[1]以空文档的形式打开Word(即:打开Word应用程序而没有实际的Word文件)[2]按ALT-F11打开Visual Basic for App (VBA)[3]展开NORMAL文件夹(可能叫别的名字),但是我们需要把这个宏保存到默认的DOT文件中。[4]双击"ThisDocument"[5]这时会打开一个文档宏窗口[6]粘贴以下代码:

Private Sub Document_Open()
  MsgBox "Make sure you do a FILE -> SAVE-AS before starting your work!", vbCritical + vbOKOnly, "WARNING!"
End Sub

[7]关闭Word并确保更新了NORMAL。点文件>

次你打开Word文档时,系统会自动要求你在继续之前保存你的工作。

当然,在您的情况下,您需要一个类似的宏在您退出word文档时启动,以确保它是SAVE AS。

在这种情况下,使用像这样的东西…

ActiveDocument.SAVEAS FileName:= _
    "<YOUR NETWORK OR FOLDER>myfile.docx", FileFormat:= _
    wdFormatXMLDocument, LockComments:=False, Password:="", AddToRecentFiles _
    :=True, WritePassword:="", ReadOnlyRecommended:=False, EmbedTrueTypeFonts _
    :=False, SaveNativePictureFormat:=False, SaveFormsData:=False, _
    SaveAsAOCELetter:=False

并将其放置在Document_Close()或AutoClose()事件中。我让你决定哪一个是合适的。