écrire une équation dans un document Word avec Visual Basic 2010

Résolu
kikou93 Messages postés 416 Date d'inscription   Statut Membre Dernière intervention   -  
kikou93 Messages postés 416 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

je sollicite votre aide encore une fois :
j'ai essayé de créer des équation dans un document word via Visual basic 2010 Express
la seul chose que j'ai pu trouvé est pour VBA. Word dans ce lien :
https://software-solutions-online.com/word-vba-creating-equations/
voici le code :
Sub Example3()
Dim objRange As Range
Dim objOMath As OMath
Set objRange = Selection.Range
objRange.Text = _
"f(x)=a_0+" + ChrW(8721) + "_(n=1)^8" + ChrW(9618) + _
"(a_n cos" + ChrW(12310) + "npx/L" + ChrW(12311) + _
"+b_n sin" + ChrW(12310) + "npx/L" + ChrW(12311) + " )"
Set objOMath = OMaths.Add(objRange).OMaths.Item(1)
objOMath.BuildUp
End Sub

j'ai essayé de l'adapter pour Visual basic 2010 express, voici le code :
Imports System.IO
Imports Word = Microsoft.Office.Interop.Word
Public Class Form1
Dim oWord As New Word.Application
Dim oDoc As Word.Document
Dim oPara1 As Word.Paragraph
Dim objOMath As Word.OMath
Dim cheminPlusFichier As String
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
'Démarrez Word et ouvrez le modèle de document.
SaveFileDialog1.Filter = "Document Word (*.docx)|*.docx"
SaveFileDialog1.Title = "Enregistrer sous"
SaveFileDialog1.FileName = "Notes de calcul"
If SaveFileDialog1.ShowDialog() = DialogResult.OK Then 'si l'utilisateur a bien cliqué sur ok
cheminPlusFichier = SaveFileDialog1.FileName
System.IO.File.WriteAllBytes(cheminPlusFichier, My.Resources.Note_de_calcul)
End If
cheminPlusFichier = SaveFileDialog1.FileName
oDoc = oWord.Documents.Open(SaveFileDialog1.FileName)
oDoc.Application.DisplayAlerts = False 'supprime les messages d'alerte
'rendre le classeur visible
oWord.Visible = False
'Insert a paragraph at the beginning of the document.
oPara1 = oDoc.Content.Paragraphs.Add
'inserer le text qui se trouve dans la textBox 7
oPara1.Range.Text = _
"f(x)=a_0+" + ChrW(8721) + "_(n=1)^8" + ChrW(9618) + _
"(a_n cos" + ChrW(12310) + "npx/L" + ChrW(12311) + _
"+b_n sin" + ChrW(12310) + "npx/L" + ChrW(12311) + " )"
objOMath = oWord.OMaths.Add(oPara1).oWord.OMaths.Item(1)
objOMath.BuildUp()
End Sub
End Class


première mot l'équation ne se crée pas bien dans Word voici comment elle s'affiche :


et deuxième mot une erreur s'affiche :
L'exception MissingMemberException n'a pas été gérée
Le membre public 'OMaths' du type 'ApplicationClass' est introuvable.

dans ce code :
 objOMath = oWord.OMaths.Add(oPara1).oWord.OMaths.Item(1)

quelqu'un pourrait me suggérer une solution
merci d'avance pour votre aide

Comment ça marche c'est cool! 
      1000 Merci les Amis
A voir également:

1 réponse

alex-16 Messages postés 180 Date d'inscription   Statut Membre Dernière intervention   29
 
Bonsoir,

Vous pouvez utiliser une autre solution toute simple.

Appuyez sur alt et + et vous aurez une zone pour écrire votre formule les option sont dans la barre en haut.


Cordialement Alex-16
0
kikou93 Messages postés 416 Date d'inscription   Statut Membre Dernière intervention   1
 
merci de m'avoir répondu aussi rapidement
ta suggestion est utile si je veux écrire directement sur Word, mais moi je veux utiliser le logiciel Visual basic 2010 express qui me permet de créer un logiciel de calcul
après avoir terminé les calcul je veux pouvoir les enregistrer dans un document Word ( ça j'ai déjà trouvé comment faire ), ce qui me manque est code qui me permet d'écrire ces équation.
0
alex-16 Messages postés 180 Date d'inscription   Statut Membre Dernière intervention   29
 
La cela dépasse mes connaissance désoler.

Je suivrai ton post sa pourrai me servir ^^.

Dsl de pas pouvoir t'aider
0
kikou93 Messages postés 416 Date d'inscription   Statut Membre Dernière intervention   1
 
tu à déjà fait beaucoup juste en essayant de m'aider, je ne connaissais pas l'astuce de Alt et +
ça m'a fait plaisir, Merci beaucoup ^ ^
0
kikou93 Messages postés 416 Date d'inscription   Statut Membre Dernière intervention   1
 
j'ai beau chercher je ne trouve aucun solution, j'ai trouvé quelqu'un qui a le même problème que moi mais il n'a pas trouver de solution
juste une question : quand il affiche l'erreur (Le membre public 'OMaths' du type 'ApplicationClass' est introuvable. ) sa veux dire que Omaths n'appartient pas a ApplicationClass?, es que il faux le déclaré?
0
kikou93 Messages postés 416 Date d'inscription   Statut Membre Dernière intervention   1
 
J'ai même essayé ça :
        objOMath = oDoc.Content.OMaths.Add(oPara1).OMaths.Item(1)

Je croyais que ca aller marcher, mais non ca na pas marcher
0