IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VBA Word Discussion :

Tables & Text


Sujet :

VBA Word

  1. #1
    Candidat au Club
    Inscrit en
    Septembre 2006
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 7
    Points : 2
    Points
    2
    Par défaut Tables & Text
    Bonjour tout le monde,

    Je galére depuis peu pour trouver un moyen de recuperer des tableaux se trouvant juste aprés un mot clés. En fait, je voudrai détécter le mot "<TAG>" ensuite boucler sur les tableaux qui suivent jusqu'à qu'ils yen a plus ou que je retombe sur "<TAG>". J'espére avoir été bien clair et je comptes sur votre aide.

    Merci d'avance.

  2. #2
    Membre à l'essai
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    12
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Avril 2007
    Messages : 12
    Points : 12
    Points
    12
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    With Selection.Find
                .text = "<TAG>"
                .Replacement.text = ""
                .forward = False
                .Wrap = wdFindContinue
                .Format = False
                .MatchCase = False
                .MatchWholeWord = False
                .MatchWildcards = False
                .MatchSoundsLike = False
                .MatchAllWordForms = False
            End With
    Selection.Execute
    if selection.find.found then
    ...
    else
    ...
    end if
    j'espere que ca aide et avec le Execute il va se placer vers le mot

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    12
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Avril 2007
    Messages : 12
    Points : 12
    Points
    12
    Par défaut
    oups je tai mal lu voici en boucle

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
     
    ActiveDocument.Select
    Dim fin As Boolean
    fin = True
     
    Selection.Find.ClearFormatting
    While fin = True
    With Selection.Find
       .Text = "<TAG>"
       .Replacement.Text = ""
       .Forward = True
       .Wrap = wdFindStop
       .Format = False
       .MatchCase = False
       .MatchWholeWord = False
       .MatchWildcards = False
       .MatchSoundsLike = False
       .MatchAllWordForms = False
    End With
    Selection.Find.Execute
    If Selection.Find.Found = True Then
       MsgBox (Selection.Start & "<--Debut Fin-->" & Selection.End)
       Selection.Start = Len(Selection.Find.Text) + Selection.Start
       Selection.End = 2 ^ 31 - 1
    Else
       fin = False
       Selection.End = Selection.Start
     
       End If
    Wend

  4. #4
    Candidat au Club
    Inscrit en
    Septembre 2006
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 7
    Points : 2
    Points
    2
    Par défaut
    Tout d'abord, je te remercie pour ta réponse.

    Ensuite, j'ai essayé ton bout de code, mais ça boucle à l'infini le dernier msgbox qui se répéte. et puis les Selection.Start et Selection.End correspondent à quoi exactement ? à des numéros de lignes ou positions de la chaîne recherché dans le document ??? En plus ce que je voudrais exactement de la recherche c'est l'index du tableau "Doc.Tables(INDEX)" dans le document qui vient juste aprés mon "TAG". si je suis pas clair vous me le dite surtout lol.

  5. #5
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Points : 15 543
    Points
    15 543
    Par défaut
    Tu dois lire tous tes tableaux ou seulement certains ?

  6. #6
    Membre à l'essai
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    12
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Avril 2007
    Messages : 12
    Points : 12
    Points
    12
    Par défaut
    Citation Envoyé par xaminou
    Tout d'abord, je te remercie pour ta réponse.

    Ensuite, j'ai essayé ton bout de code, mais ça boucle à l'infini le dernier msgbox qui se répéte. et puis les Selection.Start et Selection.End correspondent à quoi exactement ? à des numéros de lignes ou positions de la chaîne recherché dans le document ??? En plus ce que je voudrais exactement de la recherche c'est l'index du tableau "Doc.Tables(INDEX)" dans le document qui vient juste aprés mon "TAG". si je suis pas clair vous me le dite surtout lol.
    je sais que si tu fait des cellules de tableaux ca fait une réaction bizzarre et mon code ne marchera pas alors

    le selection.start est le positionnement de début du curseur dans le document
    et le selection.end est le positionnement de fin du curseur dans le document

  7. #7
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Points : 15 543
    Points
    15 543
    Par défaut
    Ce que ferais, c'est assigner un nom de signet à chaque tableau. Ainsi, plus besoin de TAG.
    Tu pourrais fais ta recherche sur Bookmark et traiter le tableau que tu veux
    et boucler sans pb sur les tableaux désirés. Dans Excel -> Sélection du tableau -> Insertion -> Signet -> Tableaun
    Juste une idée mais bien pratique
    A+

  8. #8
    Candidat au Club
    Inscrit en
    Septembre 2006
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 7
    Points : 2
    Points
    2
    Par défaut
    justement je voudrai lire que les tableaux à partir d'un mot clé, et malheuresement j'ai une 100éne de fichiers doc à extraire.
    PS: je fais ça à partir de visual basic 2005 express en parcourant chaque fichier doc.

  9. #9
    Candidat au Club
    Inscrit en
    Septembre 2006
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 7
    Points : 2
    Points
    2
    Par défaut
    Bon je vai peut être aborder la question autrement et plus simplement.

    Comment inserer du texte entre deux tables ?? ça pourait m'aider à résoudre ma premiére question.

    Cdlt

  10. #10
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Points : 15 543
    Points
    15 543
    Par défaut
    Avant de repartir dans les balises, tu as essayé avec un signet sur ton tableau ? Les signets sont faits ec ce pré pour ça. La méthode ? relis mon dernier post.
    Entre mettre du texte et ajouter un signet, moi, je n'hésite pas. Tu t'em...
    poisonnes la vie pour rien.
    Maintenant, tu as tout le code qu'il te faut pour retrouver une balise dans Contribuez VBA Word. Regarde ici
    Bonne chance

  11. #11
    Candidat au Club
    Inscrit en
    Septembre 2006
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 7
    Points : 2
    Points
    2
    Par défaut
    je vai essayé ta méthode tt de suite et je vous dis quoi. En tout cas, merci pour vos réponses.

Discussions similaires

  1. [AC-2010] Requête table tyte texte pour insertion d'un numéroauto dans nouvelle table
    Par lagratteCchouette dans le forum Requêtes et SQL.
    Réponses: 20
    Dernier message: 31/01/2014, 16h30
  2. transformer table en texte par lignes
    Par mandrake_of_mandregas dans le forum VBA Access
    Réponses: 4
    Dernier message: 06/07/2010, 01h07
  3. div, table et text-align : center
    Par tom42 dans le forum Mise en page CSS
    Réponses: 3
    Dernier message: 03/03/2007, 17h17
  4. export table dans un fichier texte
    Par cchampion2fr dans le forum Access
    Réponses: 23
    Dernier message: 07/09/2005, 11h33
  5. Champ text dans table inserted ?
    Par devdev dans le forum MS SQL Server
    Réponses: 3
    Dernier message: 28/06/2004, 17h00

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo