2012-01-11 104 views
0

我需要从命令行启动MS Word。现在,我将这些命令/q /n /mFilePrintDefault /mFileExit传递给它。在这种情况下,我需要在最后的“保存是/否”对话框中手动按下“否”(关闭Word)。什么命令需要通过,跳过这个(不保存或保存文档)并自动关闭Word?来自命令行的MS Word命令

回答

1

在Word中,使用此代码中的Normal.dotm创建宏:

Sub CloseWithoutSaving() 
    ActiveDocument.Close SaveChanges:=wdDoNotSaveChanges 
    Application.Quit 
End Sub 

再通/ Q/N/mFilePrintDefault/mCloseWithoutSaving

+0

我很困惑,以至于它如何工作。 如果您首先调用'ActiveDocument.Close',则VB脚本将停止执行,因此它永远不会到达'Application.Quit'。这是我观察到的行为:文档将关闭,但Word窗口将保持打开状态。 如果我在该子文件中添加以下内容(并且只包含以下内容),它将按预期工作:'Application.Quit SaveChanges:= wdDoNotSaveChanges'。 我在Word 2007中对此进行了测试。也许在您和OP使用的任何版本的Word中有所不同,但由于中断的执行路径,我怀疑它。 – 2014-11-22 05:04:23

+0

我不能提供很多的见解,但它在2007年和2010年的作品。 – zach 2014-11-23 12:59:39

+0

我认为/ q开关也是退出。也许这一点代码是多余的。 – zach 2014-11-23 13:08:40

0

我假设您正尝试从命令行打印文档。您可能希望按照MS使用右键单击打印的方式执行此操作。你可以看到在这个位置的详细信息:

http://www.robvanderwoude.com/ddecommandline.php

+0

dde命令是否与MSWord和WP相同? – parzival 2012-01-13 22:17:44