VB XML docx
-
quinta-feira, 12 de fevereiro de 2009 17:59
Bonjour,
J'ai lu l'article de programmez (la revue) pour générer des docx et xlsx à l'aide de la bilbiothèque DocumentFormat.OpenXml 2.0 (article que l'on retrouve aussi ici (à peu de de choses près) http://msdn.microsoft.com/fr-fr/office/msdn.openxml.2.0.sdk.aspx )
Voici mon code... (juste traduit -me semble-t-il-)
L'intérêt de cette méthode est qu'office n'a pas à être installé sur la machine qui génère, ou utilise un document office 2007.
Je suis sous VS 2005 ( oui, je sais...)
J'ai ajouté une référence à DocumentFormat.OpenXml 2.0
Imports DocumentFormat.OpenXml.Packaging Imports DocumentFormat.OpenXml.Wordprocessing Public Class Form1 Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Dim PacquageWordDoc As DocumentFormat.OpenXml.Packaging.WordprocessingDocument PacquageWordDoc = WordprocessingDocument.Create("d:\test.docx", DocumentFormat.OpenXml.WordprocessingDocumentType.Document) 'Ajouter une partie de contenu au document PacquageWordDoc.AddMainDocumentPart() ' /Créer le contenu de votre document PacquageWordDoc.MainDocumentPart.Document = New DocumentFormat.OpenXml.Wordprocessing.Document(New Body(New Paragraph(New Run(New Text("Hello World !"))))) '// Enregistrer le contenu dans le document PacquageWordDoc.MainDocumentPart.Document.Save() End Sub End Class
Un fichier est bien généré, word 2007 ne l'ouvre pas sous pretexte de corruption ...
Un idée ?
Merci
Todas as Respostas
-
sexta-feira, 21 de agosto de 2009 16:41
'Dans l'en-tête : Imports DocumentFormat.OpenXml Imports DocumentFormat.OpenXml.Packaging Imports DocumentFormat.OpenXml.Wordprocessing 'Dans la fonction : Using package As WordprocessingDocument = _ WordprocessingDocument.Create(docName, _ wordprocessingDocumentType.Document) ' Ajouter une partie de contenu au document package.AddMainDocumentPart() ' Créer le contenu de votre document package.MainDocumentPart.Document = _ New Document( _ New Body( _ New Paragraph( _ New Run( _ New Text("Hello World !"))))) ' Enregistrer le contenu dans le document package.MainDocumentPart.Document.Save() End UsingCe code fonctionne... avec VS 2008 (et sous .NET 3.5).
Il est directement traduit de la version C# prise au même endroit.- Editado pinacolada sexta-feira, 21 de agosto de 2009 18:10
- Sugerido como Resposta Josselin terça-feira, 17 de novembro de 2009 10:13

