VB6 occurence d'un mot dans un fichier Word

Résolu
cs_pascalix Messages postés 4 Date d'inscription vendredi 10 décembre 2010 Statut Membre Dernière intervention 3 février 2012 - 22 janv. 2012 à 22:05
cs_pascalix Messages postés 4 Date d'inscription vendredi 10 décembre 2010 Statut Membre Dernière intervention 3 février 2012 - 23 janv. 2012 à 11:58
Bonjour,

je désire depuis VB6 effectuer les opérations suivantes sur un fichier Word (Word 2007):

1) ouvrir le fichier (OK, ça fonctionne)
2) insérer une Zone de Texte au sommet de chaque page (OK, ça fonctionne)
3) sauvegarder le fichier sous un autre nom (OK, ça fonctionne)
4) recevoir le n° de la page où se trouve le mot "toto" par ex. (là ça coince!)

J'ai écumé le Web en français et en anglais (beaucoup de VBA, de .net mais peu de VB6) mais là je jette l'éponge!

Toutes vos solutions sont le bienvenu.

4 réponses

Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
23 janv. 2012 à 09:04
En VBA, on fait :

    
With ActiveDocument.Range.Find
        If .Execute("sixième") Then
            MsgBox .Parent.Information(WdInformation.wdActiveEndPageNumber)
        End If
End With


code presque identique en VB6....
(WdInformation.wdActiveEndPageNumber vaut 3)

Renfield - Admin CodeS-SourceS - MVP Visual Basic & Spécialiste des RegExp
3
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 211
22 janv. 2012 à 22:16
Bonjour,

Ce seront là tes connaissance de VBA/Word, qui devront intervenir, et non celles de VB6 !
Question, donc : qu'écrirais-tu en VBA/Word pour parvenir à cette extraction, depuis ton document ?


____________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches d'autres forumeurs.
Pas d'aide en ligne installée ? ==> ne comptez pas sur moi pour simplement vous dire ce qu'elle contient
0
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 211
23 janv. 2012 à 08:17
Pour être plus clair :
- si tu m'indiques (pour moi qui connais très peu VBA/Word) cette syntaxe VBA/Word, je te donne aussitôt le code à écrire en pilotage VB6. On voit bien l'importance, dans cette affaire, de connaître VBA/Word
- si tu ne connais pas ce code, je vois mal comment assurer cette partie du pilotage et t'engage alors vivement à faire abstraction totale de l'aspect pilotage depuis VB6 et à poser, dans la section VBA, une question relative au code VBA pour extraire le numéro de la page où se trouve un mùot recherché.


____________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches d'autres forumeurs.
Pas d'aide en ligne installée ? ==> ne comptez pas sur moi pour simplement vous dire ce qu'elle contient
0
cs_pascalix Messages postés 4 Date d'inscription vendredi 10 décembre 2010 Statut Membre Dernière intervention 3 février 2012
23 janv. 2012 à 11:58
@ucfoutu: tout à fait d'accord avec toi, c'est ce que je fais quand j'ai des doutes (enregistrer une macro et l'adapter à VB). Mais là je n'y suis pas arrivé. Je n'aurais peut-être pas dû m'obstiner et poser la question dans le forum VBA.

@Renfield: c'est exactement ce que je voulais. J'ai adapté ton code à mon programme et tout baigne.

Merci à vous deux.

PS: vous tirez plus vite que votre ombre !!
0
Rejoignez-nous