Effacer des lignes word via vb.net
Bonjour,
dans le cadre de mon travail, je réalise une application en vb.net qui me permet de remplir des rapports de mesures.
Je récupère donc des fichiers de mes différents appareils de contrôle, je traite ces fichiers via mon application vb, et ensuite je transferts les données dans les signets d'un fichiers Word.
Ensuite, en fonction du nombre de mesures réalisées, je veux effacer les lignes de mon rapport qui ne me servent à rien.
J'ai donc actuellement une macro sous word qui m'efface une plage de mon fichier située entre deux signets:
Macro Word:
Code:
1 2 3 4
| 'sélection de la plage
Set myRange = ActiveDocument.Range(Start:=ActiveDocument.Bookmarks("Deb2").Range.Start, End:=ActiveDocument.Bookmarks("Deb3").Range.End)
myRange.Select
Selection.Delete |
Lancement de la Macro par mon application avec le code suivant:
Code:
1 2 3 4
|
For i = Total_Mesures + 1 To 18
oWord.Application.Run("Effacer_BB" & i)
Next |
Cela fonctionne parfaitement si les macros word sont dans le fichier. Mon besoin est d'éviter de passer par les macros word, et de tous faire via le code Vb.
Mais j'ai beau essayer différentes fonctions, mais rien ne fonctionne:
Code:
1 2 3 4 5 6 7 8
| Dim X, Y As Long
X = oWord.ActiveDocument.Bookmarks("Deb2").Start
Y = oWord.ActiveDocument.Bookmarks("Deb3").End
oWord.ActiveDocument.Range(Start:=X, [End]:=Y).Select()
oWord.ActiveDocument.Range(Start:=X, [End]:=Y).Delete() |
Mais cela ne fonctionne pas, auriez vous une idée??
Merci d'avance.