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 :

Inclure le contenue d'un txt avec champs includetext [WD-2010]


Sujet :

VBA Word

  1. #1
    Nouveau membre du Club
    Homme Profil pro
    Orange UIPL
    Inscrit en
    Janvier 2013
    Messages
    23
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Orange UIPL
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Janvier 2013
    Messages : 23
    Points : 31
    Points
    31
    Par défaut Inclure le contenue d'un txt avec champs includetext
    Bonjour la communauté !

    Je viens vers vous pour résoudre le soucis qui me bloque depuis une semaine voir deux ...

    J'ai donc un fichier Excel qui m'enregistre dans un fichier "log_signets.txt" des données du type:

    X_001_aaaaaa
    X_002_bbbbbb
    X_003_cccccc
    X_004_dddddd
    X_005_eeeeee
    X_006_fffffffff
    X_007_gggggg
    X_008_hhhhhh

    Elle sont écrites comme ci-dessus (une donnée par ligne). Ces donnée sont la valeurs des signets que j'ai assigné dans un document Word maitre.

    J'aimerais insérer ces lignes dans un autre fichier Word, sachant qu'il faut insérer dans le champ "INCLUDETEXT"

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    {INCLUDETEXT "C:\\mon_chemin" X_001_aaaaaa }
    "C:\\mon_chemin" reste toujours le même ....

    J'espère que mon explication sera clair et précise .... !

    Je vous remercie par avance .... !


    Cordialement.


    Guillaume

  2. #2
    Rédacteur/Modérateur

    Avatar de Heureux-oli
    Homme Profil pro
    Contrôleur d'industrie
    Inscrit en
    Février 2006
    Messages
    21 087
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : Belgique

    Informations professionnelles :
    Activité : Contrôleur d'industrie
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2006
    Messages : 21 087
    Points : 42 926
    Points
    42 926
    Par défaut
    Salut,

    Si j'ai bien compris, tu as un fichier Excel qui contient une liste de fichier.
    Tu souhaiterais que les fichiers repris dans ce classeur soient intégrés dans un document Word ?

    Pourquoi ne pas utiliser un publipostage ?

  3. #3
    Nouveau membre du Club
    Homme Profil pro
    Orange UIPL
    Inscrit en
    Janvier 2013
    Messages
    23
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Orange UIPL
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Janvier 2013
    Messages : 23
    Points : 31
    Points
    31
    Par défaut
    Bonjour Olivier,

    Je me permet de mettre à disposition des personnes qui souhaite travailler ou voir ce que je cherche comme solution, un screenshot de mon excel pour mieux illustrer mon application que je cherche à faire ...

    https://ifx.amp.com/TECifx-cgi/1.3/d...bourges@te.com

    avec le mot de passe suivant: fca2 7346 762c 6c97 8a48 391f
    (à saisir dans "Retrieval Password:")

    Donc dans mon fichier Excel qui comprend 6 colonnes:

    -Le métier (1,2,3)
    -La phase (X_001,X_002,X_003,X_004,X_005,X_006,X_007,X_008)
    -L'intitulé (c'est le titre qui est saisie dans mon tableau Word)
    -Le lien (=LIEN_HYPERTEXTE("["&$O$3&"]X_001_aaaaaa";"Lien")
    -Le signet (ils sont présent dans mon Glossaire.docm qui est ma base de données ou sont présent mes tableaux)
    -Une colonne vide ou l'utilisateur clique pour saisir automatiquement via macro vba Excel une croix.

    La fonction de ma macro "principale" de mon fichier Excel est de générer un document word (via une trame). Il insère les lignes ou il y as présence de croix dans cette sixième colonne.

    Et donc pour générer ce document j'ai utilisé un fichier .txt ou la valeurs des signet qui sont cochés sont enregistrer lors de ma boucle.

    J'aimerais donc pouvoir via vba Word importer ces valeurs dans mon word. Je doit faire apparaître tout cela via la fonction INCLUDETEXT qui sera écris de la façon suivante:

    {INCLUDETEXT "C:\\mon_chemin" X_001_aaaaaa }


    Voici donc le code que j'ai et qui ne demande qu'as être améliorer pour répondre à mon besoin !


    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
    Sub ouvrir_txt()
     
    Dim intFic As Integer
    Dim strLigne As String
     
    intFic = FreeFile
    Open "E\log_signets.txt" For Input As intFic
    While Not EOF(intFic)
    Line Input #intFic, strLigne
    'MsgBox strLigne
    Wend
     
    Selection.TypeText Text:=strLigne
     
    Close intFic
    End Sub
    N'ayant que trop peu de connaissance en vba je n'arrive pas à boucler mon fichier .txt. Il comprend la/les valeurs d'un signet par ligne donc de cette forme,

    X_001_aaaaaa
    X_002_bbbbbb
    X_003_cccccc
    X_004_dddddd
    X_005_eeeeee
    X_006_fffffffff
    X_007_gggggg
    X_008_hhhhhh

    Qui pourrais éclairer ma lanterne ....? !

    Dans l'attente d'une solution...

    Merci d'avance !!

    Crdlt.

    Guillaume.

  4. #4
    Rédacteur/Modérateur

    Avatar de Heureux-oli
    Homme Profil pro
    Contrôleur d'industrie
    Inscrit en
    Février 2006
    Messages
    21 087
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : Belgique

    Informations professionnelles :
    Activité : Contrôleur d'industrie
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2006
    Messages : 21 087
    Points : 42 926
    Points
    42 926
    Par défaut
    Salut,

    J'ai toujours pas compris.
    Le Screen Shot ne fonctionne pas, mais tu peux mettre un image en tant que fichier à ton post.

    Si tu veux un IncludeText, c'est que X_001_aaaaaa correspond à un fichier.
    Mais quelle est son extension ?

    Et si c'est un fichier, pourquoi vouloir utiliser du VBA alors qu'un publipostage pourrait le faire aussi.

  5. #5
    Nouveau membre du Club
    Homme Profil pro
    Orange UIPL
    Inscrit en
    Janvier 2013
    Messages
    23
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Orange UIPL
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Janvier 2013
    Messages : 23
    Points : 31
    Points
    31
    Par défaut
    J"ai un document maitre, on l'appellera Word1.
    Il comprends des tableaux, chaque tableau est assigné à un signet spécifique.
    Ces signets sont du type, X_001_aaaaaa.

    Et je doit donc générer un doc, word2 qui contient une trame déjà pré faite, qui contiendra les signet à intégrer via includetext.... est ce plus clair ?

    J'ai remit en PJ, le screenshot. Si besoin est je peut en faire un de mon document word1 mais je ne sais pas si elle sera utile ...

    EDIT: C'est bon quand à l'insertion de ces signet dans mon document word.
    Je vous partage le bout de code qui m'as permit cela.

    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
    '******************************************************************************
    'Macro d'insertion des signets du log_signets.txt
    '******************************************************************************
    Sub insertion_signets()
     
    Dim intFic As Integer
    Dim strLigne As String
    Dim chemin As String
     
    intFic = FreeFile
    chemin = "E:\\Glossaire.docm"
     
    Open "E:\log_signets.txt" For Input As intFic
    While Not EOF(intFic)
     
        Line Input #intFic, strLigne
    Chr (13) & Chr(10)
     
    Selection.Fields.Add Range:=Selection.Range, Type:=wdFieldIncludeText, Text:=Chr$(34) & chemin & Chr$(34) & " " & strLigne, PreserveFormatting:=False
    Wend
     
    Close intFic
     
    End Sub
    Je cherche donc maintenant à ce que ces signets soit trier par ordre numérique, c'est à dire que pour l'instant ces signets sont insérer dans le word dans l'ordre ou ils sont coché et ou ils sont placés dans le fichier excel.

    Donc pour montrer un exemple ....

    J'insère 10 signets différents:

    X_001_aaaaaa
    X_002_aaaaaa
    X_003_aaaaaa
    X_004_aaaaaa
    X_005_aaaaaa
    X_006_aaaaaa
    X_007_aaaaaa
    X_008_aaaaaa
    X_001_bbbbbb
    X_002_bbbbbb

    Ils sont insérer comme ceci pour l'instant et voila le résultat souhaité...
    Ils doivent être mit dans l'ordre de X_001 puis 002 puis 003 ... ainsi de suite...



    X_001_aaaaaa
    X_001_bbbbbb
    X_002_aaaaaa
    X_002_bbbbbb
    X_003_aaaaaa
    X_004_aaaaaa
    X_005_aaaaaa
    X_006_aaaaaa
    X_007_aaaaaa
    X_008_aaaaaa

    Et là je sèche sévèrement .... ^^'!

    Merci en tout cas Olivier c'est grâce à un de tes posts que j'ai réussis à solutionner mon problème
    Images attachées Images attachées  

  6. #6
    Rédacteur/Modérateur

    Avatar de Heureux-oli
    Homme Profil pro
    Contrôleur d'industrie
    Inscrit en
    Février 2006
    Messages
    21 087
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : Belgique

    Informations professionnelles :
    Activité : Contrôleur d'industrie
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2006
    Messages : 21 087
    Points : 42 926
    Points
    42 926
    Par défaut
    Salut,

    Je pense que le plus simple pour trier tes données est d'ouvrir le fichier txt, faire un tri avec Word et sauvegarder le fichier ensuite.

    On peut aussi faire le tri en VBA, mais en Word, il y a un fonction prévue pour.

  7. #7
    Nouveau membre du Club
    Homme Profil pro
    Orange UIPL
    Inscrit en
    Janvier 2013
    Messages
    23
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Orange UIPL
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Janvier 2013
    Messages : 23
    Points : 31
    Points
    31
    Par défaut
    J'aimerais bien utilisé word pour effectuer le tri mais du coup sa me fait changer tout mes bout de code ^^

    Quel est cette fonction qui utilise le tri que je voudrais effectuer sur cette liste ?

    Edit: J'ai trouver le tri, j'ai fait un test avec l'enregistreur de macro et voila ce que j'en ai extrait

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
        Selection.Sort ExcludeHeader:=False, FieldNumber:="Paragraphes", _
            SortFieldType:=wdSortFieldAlphanumeric, SortOrder:=wdSortOrderAscending, _
            FieldNumber2:="", SortFieldType2:=wdSortFieldAlphanumeric, SortOrder2:= _
            wdSortOrderAscending, FieldNumber3:="", SortFieldType3:= _
            wdSortFieldAlphanumeric, SortOrder3:=wdSortOrderAscending, Separator:= _
            wdSortSeparateByTabs, SortColumn:=False, CaseSensitive:=False, LanguageID _
            :=wdFrench, SubFieldNumber:="Paragraphes", SubFieldNumber2:="Paragraphes" _
            , SubFieldNumber3:="Paragraphes"
    Edit 2: J'ai solutionné mon problème tout simplement en activant un filtre sur ma colonne ou se trouve mes signets et c'est ce que je recherchais pour combler mon besoin !

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. inclure le contenu d'un .txt
    Par Him dans le forum Langage
    Réponses: 4
    Dernier message: 30/07/2006, 00h41
  2. [debutant]remplir un champs txt avec un clic bouton
    Par Zen_Fou dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 01/06/2006, 17h07
  3. Réponses: 10
    Dernier message: 20/04/2006, 01h52
  4. Copier contenu TB_A dans TB_B avec les même champs
    Par snoopy69 dans le forum Access
    Réponses: 3
    Dernier message: 13/10/2005, 16h22
  5. lire et changer le contenu d'texte.txt avec javascript?!
    Par Squalli dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 11/08/2005, 18h20

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