Manipuler Word sous vb

Fermé
Parn - 18 févr. 2002 à 11:39
 alimaj - 15 mai 2009 à 10:54
Bjour,

Pour l instant j arrive à ouvrir un fichier word et à me deplacer de signet en signet pour ajouter des informations. Par contre qd j'ai trop de données je souhaiterais creer une nouvelle page dans ce fichier, avec la meme forme que la premiere (logo de l entrepise, cadre bleu, etc) ms je n'arrive pas à copier tt ce qui est image, tableau et dessin. De plus une fois cette etape reussie, il faudrait que je puisse creer à partir de vb de nouveaux signets pour placer correctement les donnée pour cette nouvelle page.
Si qq un a une idée, des infos ou n importe koi qui pourrait m'aider, je suis preneur.

Merci d'avance
A voir également:

3 réponses

le code de manipulation du macros et des signets word dans vb net
2
Bonjour,

Bien sûr, voici l'extrait de la macro (elle est très longue) qui gère ça. Le collage est en dernière ligne.

Merci d'avance,
Marc


' *********************** Recherche *************************

' Trouve le mot dans le document

wrdApp2.Selection.Find.ClearFormatting
With wrdApp2.Selection.Find

.ClearFormatting


' Mot proche
If Proche.Value = False Then
.Text = Mot.Value

' Mot exact
If MotEx.Value = True Then
.MatchWholeWord = True
End If

' Respect de la casse
If Casse.Value = True Then
.MatchCase = True
End If
End If

' Mot proche
If Proche.Value = True Then
.Text = MotSSA
.MatchCase = False
.MatchSoundsLike = True
End If

' Toutes les formes
If Forme.Value = True Then
.Text = Mot.Value
.MatchCase = False
.MatchAllWordForms = True
End If






.MatchWildcards = 0
.Forward = 1
.Replacement.Text = ""
.Replacement.ClearFormatting
.Execute ' recherche du mot1
End With

' Répéter l'opération jusqu'à ce qu'un mot soit trouvé
Do While wrdApp2.Selection.Find.Execute = True
wrdApp2.Selection.ParaGraphs(1).Range.Select

' Donne le numéro du paragraphe
Dim pg As Integer
pg = wrdApp2.Activedocument.Range(Start:=1, End:=wrdApp2.Selection.End).ParaGraphs.Count

' Copie le paragraphe contenant le résultat
wrdApp2.Selection.Copy
' Place le curseur à droite du paragraphe copié pour continuer la recherche dans la suite
' du document
wrdApp2.Selection.Moveright , Extend:=0


' Colle le résultat dans la feuille "Résultat"
RECH.Sheets("Résultats").Cells(m, 4).PasteSpecial Paste:=xlValues, Operation:=xlNone
1
Bonjour,

Bien sûr, voici l'extrait de la macro (elle est très longue) qui gère ça. Le collage est en dernière ligne.

Merci d'avance,
Marc


' *********************** Recherche *************************

' Trouve le mot dans le document

wrdApp2.Selection.Find.ClearFormatting
With wrdApp2.Selection.Find

.ClearFormatting


' Mot proche
If Proche.Value = False Then
.Text = Mot.Value

' Mot exact
If MotEx.Value = True Then
.MatchWholeWord = True
End If

' Respect de la casse
If Casse.Value = True Then
.MatchCase = True
End If
End If

' Mot proche
If Proche.Value = True Then
.Text = MotSSA
.MatchCase = False
.MatchSoundsLike = True
End If

' Toutes les formes
If Forme.Value = True Then
.Text = Mot.Value
.MatchCase = False
.MatchAllWordForms = True
End If






.MatchWildcards = 0
.Forward = 1
.Replacement.Text = ""
.Replacement.ClearFormatting
.Execute ' recherche du mot1
End With

' Répéter l'opération jusqu'à ce qu'un mot soit trouvé
Do While wrdApp2.Selection.Find.Execute = True
wrdApp2.Selection.ParaGraphs(1).Range.Select

' Donne le numéro du paragraphe
Dim pg As Integer
pg = wrdApp2.Activedocument.Range(Start:=1, End:=wrdApp2.Selection.End).ParaGraphs.Count

' Copie le paragraphe contenant le résultat
wrdApp2.Selection.Copy
' Place le curseur à droite du paragraphe copié pour continuer la recherche dans la suite
' du document
wrdApp2.Selection.Moveright , Extend:=0


' Colle le résultat dans la feuille "Résultat"
RECH.Sheets("Résultats").Cells(m, 4).PasteSpecial Paste:=xlValues, Operation:=xlNone
-1