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

Résolu/Fermé
kikou93
Messages postés
417
Date d'inscription
mardi 4 février 2014
Statut
Membre
Dernière intervention
24 septembre 2018
- Modifié par kikou93 le 25/04/2016 à 19:04
kikou93
Messages postés
417
Date d'inscription
mardi 4 février 2014
Statut
Membre
Dernière intervention
24 septembre 2018
- 3 août 2016 à 13:57
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

1 réponse

alex-16
Messages postés
180
Date d'inscription
jeudi 16 mai 2013
Statut
Membre
Dernière intervention
31 août 2016
26
25 avril 2016 à 19:56
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
417
Date d'inscription
mardi 4 février 2014
Statut
Membre
Dernière intervention
24 septembre 2018
1
25 avril 2016 à 20:05
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
jeudi 16 mai 2013
Statut
Membre
Dernière intervention
31 août 2016
26
25 avril 2016 à 20:08
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
417
Date d'inscription
mardi 4 février 2014
Statut
Membre
Dernière intervention
24 septembre 2018
1
25 avril 2016 à 20:14
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
417
Date d'inscription
mardi 4 février 2014
Statut
Membre
Dernière intervention
24 septembre 2018
1
30 avril 2016 à 21:16
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
417
Date d'inscription
mardi 4 février 2014
Statut
Membre
Dernière intervention
24 septembre 2018
1
2 mai 2016 à 23:22
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