在此先感謝您提供的任何幫助。VB.Net保存word文檔沒有提示
我試圖創建一個VB應用程序,它將打開一個現有的Word文檔,進行一些更改並將其保存爲一個新的文件名。對文檔進行更改非常簡單。保存文件似乎應該一樣簡單,但有一個嚴重的問題。當我嘗試保存文檔時,另存爲對話框打開。這應該是自動的,所以不起作用。我已經嘗試了一大堆的變化:
Sub Main()
Dim oWord As Word.Application
Dim oDoc As Word.Document
Dim fileName As String
Dim templateName As String
Dim newFileName As String
'Start Word and open the document template.
oWord = CreateObject("Word.Application")
oWord.Visible = False
oWord.DisplayAlerts = Word.WdAlertLevel.wdAlertsNone
templateName = "C:\tmp\template.dotx"
fileName = "C:\tmp\document.docx"
newFileName = "C:\tmp\new document.docx"
oDoc = oWord.Documents.Add(templateName)
'oDoc = oWord.Documents.Open(fileName) I have tried both using a template and opening a docx file.
<make changes>
oDoc.SaveAs2(newFileName)
oWord.Documents.Close(Word.WdSaveOptions.wdDoNotSaveChanges)
oWord.Application.Quit()
oWord = Nothing
End Sub
它總是停在這裏:
oDoc.SaveAs2
,並打開另存爲對話框。我需要找到一種方法來抑制另存爲對話框或編輯word文件的新方法。我迄今發現的有關該問題的所有內容都未被解決/更新或與Word插件相關。我沒有任何人說的引起問題的插件。爲了安全起見,我禁用了所有的單詞插件。
我將不勝感激,如果任何人有解決它或有不同的方法。我不會堅持使用VB的想法。我走這條路線的唯一原因是因爲我認爲它給了我編輯圖表和格式化文檔的最佳庫。
謝謝你,史蒂夫
是該文件的本地或網絡路徑上?您確定在保存之前沒有使用它嗎? – Saragis
在excel中,您設置application.displayalerts = false並在saveas提示符中指定conflictResolution值。我會懷疑類似的字 – Greg
@Saragis該文件是本地的。它沒有被使用。新的文件名是一個隨機的UUID,所以我確定它已經不存在了。 – stevepra