Comment puis-je ouvrir un programme document MS Word sans invoquer la macro Document_Open
-
21-08-2019 - |
Question
Je suis en train d'utiliser Office Automation pour ouvrir un document Word. Le problème est que je voudrais l'ouvrir sans invoquer la macro Document_Open. Est-il possible de le faire?
La ligne correspondante ci-dessous est wordApp.Documents.Open ()
Imports Microsoft.Office.Interop
Public Class WordFunctions
Public Shared Function ConvertToDoc(ByVal file As String) As Boolean
Dim wordDoc As Word.Document
Dim wordApp As Word.Application
Try
wordApp = CreateObject("Word.Application", "")
Catch ex As Exception
Return False
End Try
Try
wordApp.Caption = "Automated Word Instance"
wordApp.DisplayAlerts = Word.WdAlertLevel.wdAlertsNone
wordDoc = wordApp.Documents.Open(FileName:=file, Visible:=False, ConfirmConversions:=False)
wordDoc.SaveAs(FileName:=file + ".doc", FileFormat:=Word.WdSaveFormat.wdFormatDocument)
wordDoc.Activate()
wordDoc.Close()
Return True
Catch ex As Exception
Return False
Finally
wordApp.Quit(SaveChanges:=False)
End Try
End Function
End Class
La solution
La réponse acceptée ici peut être utile:
un fichier Manipulez dans le code (VB.NET) sans exécuter les macros du fichier
Autres conseils
S'il est des documents Word 2007 vous travaillez, essayez de changer votre code pour travailler avec le XML directement, au lieu d'utiliser l'API Office Automation.
Il est plus rapide, et vous n'avez pas à vous soucier des macros (et beaucoup d'autres problèmes d'automatisation).
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow