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

Macros et VBA Excel Discussion :

Print #1 sous forme de tableau


Sujet :

Macros et VBA Excel

  1. #1
    Membre éclairé Avatar de touche_a_tout
    Profil pro
    Inscrit en
    Août 2006
    Messages
    545
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Août 2006
    Messages : 545
    Par défaut Print #1 sous forme de tableau
    Bonjour,
    J'ai une appli qui extrait le contenu d'un tableau XL sous forme de listing .txt au moyen d'une boucle Do...Loop en utilisant "Print #1" . Je voudrais que la sortie se fasse dans un tableau à 2 colonnes avec une nouvelle ligne à chaque boucle Loop, en plaçant le listing complet dans une colonne et un des élément du listing sur lequel trier tout le tableau répété dans la seconde colonne. Le tableau Excel a environ 90 colonnes et selon les cas entre 15 et 180 lignes donc aucun rapport avec la structure du tableau produit par le code. Je ne sais pas quelle(s) commande(s) VBA utiliser pour créer des lignes et des colonnes et je n'ai trouvé ça nulle part. Est-ce que quelqu'un a une idée ? Merci d'avance. Je joins un exemple miniature pour plus de clarté.
    Cordialement
    touche_a_toutNom : tableau..jpg
Affichages : 228
Taille : 64,3 Ko

  2. #2
    Invité
    Invité(e)
    Par défaut
    Bonjour,

    Je ne comprends pas bien la demande 🤔

    De part sa nature, un fichier texte ne peut contenir de colonnes ou éventuellement avec une tabulation mais rien ne sera aligné

    Quel est le but de tout ça ?

    A+

  3. #3
    Membre éclairé Avatar de touche_a_tout
    Profil pro
    Inscrit en
    Août 2006
    Messages
    545
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Août 2006
    Messages : 545
    Par défaut [XL-2016] Print #1 sous forme de tableau
    Bonjour BrunoM45 et tout le monde,
    Ma demande était fumeuse, par contre votre réponse est parfaitement claire: un fichier texte ne peut pas, de par sa nature même, avoir de mise en forme, merci de me l'avoir rappelé. Quant au but de tout ça, c'est un peu compliqué. Mes tables XL contiennent les données de centaines d'actes d'état-civil (naissances, mariages, décès), avec dans les colonnes des noms, prénoms, dates, lieux, etc. L'appli dont je parle m'a déjà permis d'extraire de ces feuilles XL des centaines d'actes reconstitués qui servent de "preuves" de ce que contient ma généalogie.
    Maintenant, je dois relier chaque événement de chaque individu (naissance, etc.) à l'acte qui le prouve. Pour ce faire, j'ai besoin d'un listing de mes actes pour avoir accès à tous leurs détails. Ce serait beaucoup facile si ces actes étaient classés par ordre alphabétique des individus concernés, comme dans ma pièce jointe. Je pensais à une solution en une passe qui fournirait un fichier contenant les instructions visant à introduire des lignes et des colonnes aux endroits voulus (ainsi qu'une répétition des termes sur lesquels les actes seraient classés dans un second temps) mais ça paraît impossible.
    Repartons alors d'un listing au format texte dans lequel Print #1 m'aura permis d'introduire, aux endroits voulus, des caractères spéciaux (p. ex. $, £. ], etc.) que je pourrai remplacer ensuite (cherche et remplace) par les instructions permettant de créer, dans un texte continu, des lignes et des colonnes. Mais quels sont ces instructions; est-ce qu'elles existent au moins ?
    J'ai été beaucoup plus long, mais peut-être pas plus clair ! Est-ce que quelqu'un peut m'aider à partir de ça ?
    Merci d'avance pour toute piste.
    Belle journée.
    Cordialement
    touche_a_tout

  4. #4
    Expert éminent

    Profil pro
    Conseil, Formation, Développement - Indépendant
    Inscrit en
    Février 2010
    Messages
    8 572
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Conseil, Formation, Développement - Indépendant

    Informations forums :
    Inscription : Février 2010
    Messages : 8 572
    Par défaut
    Bonjour à tous

    Sans exemple de ce de quoi tu pars, difficile de te donner le chemin pour atteindre l'arrivée

  5. #5
    Membre éclairé Avatar de touche_a_tout
    Profil pro
    Inscrit en
    Août 2006
    Messages
    545
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Août 2006
    Messages : 545
    Par défaut Print #1 sous forme de tableau
    Bonjour et merci 78Chris,
    Flatté qu'un expert de votre niveau s'intéresse à ma question. Je n'ai pas de raison de principe de ne pas montrer de quoi il s'agit mais le fichier pèse près de 800 Ko, le code compte 3200 lignes et la sortie est paramétrée en fonction de mon arborescence, ce qui rend la chose un peu compliquée. Je peux fournir des échantillons moins lourds comme exemples (un extrait de feuille XL et un extrait de listing par exemple): est-ce que ça suffirait ? J'ai juste besoin d'un peu de temps pour préparer les échantillons. Qu'en pensez-vous ? Sinon je balance le tout en annexe à un post mais je ne me rappelle pas s'il y a une limite au poids des annexes.
    Merci d'avance de votre retour.
    Cordialement
    touche_a_tout

  6. #6
    Membre éclairé Avatar de touche_a_tout
    Profil pro
    Inscrit en
    Août 2006
    Messages
    545
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Août 2006
    Messages : 545
    Par défaut Print #1 sous forme de tableau
    Rebonjour 78Chris,
    A tout hasard, je joins
    - un extrait de feuille XL tout à fait similaire à celles que mon appli utilise.
    - un doc word comparant un listing brut (colonne de gauche) et un listing transformé en tableau avec un élément extrait et placé dans une deuxième colonne sur laquelle le tout serait trié. C'est à quoi j'aimerais arriver. Merci de ton attention.
    Cordialement
    touche_a_tout

  7. #7
    Membre éclairé Avatar de touche_a_tout
    Profil pro
    Inscrit en
    Août 2006
    Messages
    545
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Août 2006
    Messages : 545
    Par défaut Print #1 sous forme de tableau
    Bon, j'ai oublié les annexes !
    voici extrait_feuille.xlsx transf_tabl.docx
    Cordialement
    touche_a_tout

  8. #8
    Expert éminent

    Profil pro
    Conseil, Formation, Développement - Indépendant
    Inscrit en
    Février 2010
    Messages
    8 572
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Conseil, Formation, Développement - Indépendant

    Informations forums :
    Inscription : Février 2010
    Messages : 8 572
    Par défaut
    RE

    Je regarde en soirée

  9. #9
    Membre éclairé Avatar de touche_a_tout
    Profil pro
    Inscrit en
    Août 2006
    Messages
    545
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Août 2006
    Messages : 545
    Par défaut Print #1 sous forme de tableau
    Merci d'avance
    tat

  10. #10
    Expert éminent

    Profil pro
    Conseil, Formation, Développement - Indépendant
    Inscrit en
    Février 2010
    Messages
    8 572
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Conseil, Formation, Développement - Indépendant

    Informations forums :
    Inscription : Février 2010
    Messages : 8 572
    Par défaut
    Bonjour

    Ci-joint le fichier texte extrait du Word + le traitement PowerQuery dans Excel.

    Modifier le chemin dans la cellule jaune et actualiser le tableau (clic droit)
    Fichiers attachés Fichiers attachés

  11. #11
    Membre éclairé Avatar de touche_a_tout
    Profil pro
    Inscrit en
    Août 2006
    Messages
    545
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Août 2006
    Messages : 545
    Par défaut Print #1 sous forme de tableau
    Bonjour 78Chris,
    D'abord merci et bravo d'avoir décrypté ma demande un peu fumeuse. Le week-end je n'ai pas accès à mon PC mais à un portable d'emprunt avec Excel 1997-2003. Je n'ai donc pas eu accès à ton code. Je n'avais jamais entendu parle de PowerQuery jusqu'à ce jour !
    Dans le listing Word traité, il y a juste un malentendu: dans la colonne de droite la première ligne doit être celle qui commence par le numéro de la source (0 @xxxx SOUR) c'est-à-dire que le tri ne se fait pas sur la première ligne de chaque source mais sur son titre. Je ne voulais pas tarder à te remercier mais je n'aurai accès aux détails que lundi.
    Bon dimanche.
    touche_a_tout

  12. #12
    Membre éclairé Avatar de touche_a_tout
    Profil pro
    Inscrit en
    Août 2006
    Messages
    545
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Août 2006
    Messages : 545
    Par défaut Print #1 sous forme de tableau
    Bonsoir 78Chris et merci,
    Je viens de prendre connaissance des annexes à ton post # 10 et suis un peu largué.
    Je te remercie de l’énorme travail que tu as produit mais je pensais que ta réponse me permettrait d’appliquer moi-même le traitement adéquat à mes autres feuilles de données (j’en ai 21, qui contiennent entre 1 et 282 actes) mais en fait tu m’as livré le travail tout fait. Je n’avais pas l’intention de te confier un mandat d’exécution mais d’obtenir des explications qui me permettraient de m’en charger moi-même. En gros je pensais apprendre à pêcher et tu me livres le poisson tout prêt !
    A propos de PowerQuery, dont tu recommandes l’emploi, j’ai essayé de saisir le nom dans un module standard Excel (ver 2016) mais les 2 termes, ensemble ou séparément, sont inconnus. Je nage complètement.
    Dans ma réponse précédente, il y a une erreur : c’est dans le tableau Excel que la limite entre deux actes n’est pas au bon endroit : la première ligne de chaque acte est sa référence : 0 @Sxxx@ SOUR mais c’est la ligne qui commence par 1 TITL qui sert au tri.
    A part cela, en examinant de plus près mon listing, j’ai constaté qu’il est encore plein d’erreurs qui m’avaient échappé jusqu’à maintenant et que je devrai corriger avant de procéder à l’opération de transformation en tableau.
    Encore merci. Cordialement
    touche_a_tout

  13. #13
    Expert éminent

    Profil pro
    Conseil, Formation, Développement - Indépendant
    Inscrit en
    Février 2010
    Messages
    8 572
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Conseil, Formation, Développement - Indépendant

    Informations forums :
    Inscription : Février 2010
    Messages : 8 572
    Par défaut
    RE

    Avant d'expliquer comment faire j'attendais que tu valides mais je ne comprends pas trop tes remarques

    J'ai bien pris la ligne 1 TITL de chaque bloc pour en mettre le contenu en colonne 1

    Je n'ai rien trié, simplement fait une rupture à chaque changement de 1 TITL.

    Effectivement à droite SOUR est mal placé. J'ai corrigé.

    PowerQuery n'est pas du VBA et n'a rien à faire dans un module...

    Un peu de lecture sur le blog de Pierre https://www.developpez.net/forums/bl...sseur-externe/

    Le B.A BA aussi ici http://www.excel-formations.fr/Trucs_astuces/PQ00.php
    Fichiers attachés Fichiers attachés

  14. #14
    Membre éclairé Avatar de touche_a_tout
    Profil pro
    Inscrit en
    Août 2006
    Messages
    545
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Août 2006
    Messages : 545
    Par défaut Print #1 sous forme de tableau
    Bonjour,
    Toutes mes excuses: c'est moi qui n'ai pas compris ta démarche (les explications dans un deuxième temps), ce qui explique presque toutes mes remarques. La seule qui se justifiait est celle que j'avais formulée le 8.10 à 12 h 21 mais elle est parfaitement appliquée dans le nouveau fichier Excel. Il est donc possible maintenant de trier ces données sur la colonne TITL, soit dans l'ordre alphabétique du premier individu nommé dans l'acte: c'est exactement ce que je souhaitais, merci. Je vais faire les lectures que tu recommandes. Pour le PQ, j'ai mal interprété ta phrase indiquant qu'il est "intégré à Excel" où j'ai compris "intégré au VBA Excel"
    Cordialement
    touche_a_tout

  15. #15
    Membre éclairé Avatar de touche_a_tout
    Profil pro
    Inscrit en
    Août 2006
    Messages
    545
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Août 2006
    Messages : 545
    Par défaut Print #1 sous forme de tableau
    Rebonjour,
    J'ai parcouru les documents recommandés mais je n'ai pas pu approfondir car ma version d'Excel 2016 (Famille et petite entreprise) ne comporte pas PowerQuery. Ca vaudrait la peine d'être signalé. Le ruban de l'onglet Données n'est pas le même que dans l'exemple de P. Fauconnier. J'imagine que, comme pour certaines versions antérieures il est disponible en Add On. Je n'ai pas eu le temps de chercher.
    Autre chose: je suis allé un peu vite à propos du second fichier Excel. Pour des raisons qui m'échappent, la ligne 0 @Snnn@ SOUR manque dans les actes de mariage (ou dans certains du moins).
    A propos du tri, je suppose qu'il peut être effectué depuis PowerQuery, juste ?
    Je vais voir si je peux me procurer PQ.
    Encore merci
    Cordialement
    touche_a_tout

  16. #16
    Membre éclairé Avatar de touche_a_tout
    Profil pro
    Inscrit en
    Août 2006
    Messages
    545
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Août 2006
    Messages : 545
    Par défaut Print #1 sous forme de tableau
    Rebonjour,
    Rectification.
    Ma version d'Excel comporte effectivement soit certaines, soit toutes les fonctionnalités incluses dans PowerQuery mais je n'ai pas pu faire apparaître l'interface visible dans l'article de blog de P. Fauconnier, et qui m'a semblé faire toute la puissance et la facilité d'emploi de PQ. Bref, PQ est encore mieux caché dans la version Famille que dans les autres.
    Belle journée
    touche_a_tout

  17. #17
    Expert éminent

    Profil pro
    Conseil, Formation, Développement - Indépendant
    Inscrit en
    Février 2010
    Messages
    8 572
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Conseil, Formation, Développement - Indépendant

    Informations forums :
    Inscription : Février 2010
    Messages : 8 572
    Par défaut
    Bonjour

    Données, Obtenir des données, Lancer PowerQuery

    Je vais regarder concernant la ligne 0 @Snnn@ SOUR mais sans doute pas ce matin

    Il y a beaucoup de texte dans les cellules et j'ai du passer en police 10 pt pour voir tout dans les cellules Excel...

  18. #18
    Membre éclairé Avatar de touche_a_tout
    Profil pro
    Inscrit en
    Août 2006
    Messages
    545
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Août 2006
    Messages : 545
    Par défaut Print #1 sous forme de tableau
    Bonjour et merci,
    La taille de police importe peu.
    Je ne sais pas où saisir la ligne
    [B]Données, Obtenir des données, Lancer PowerQuery[/B]
    Tu parlais toi-même de B.A. BA...
    Cordialement
    touche_a_tout

  19. #19
    Membre éclairé Avatar de touche_a_tout
    Profil pro
    Inscrit en
    Août 2006
    Messages
    545
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Août 2006
    Messages : 545
    Par défaut Print #1 sous forme de tableau
    Bonjour,
    Voyez cette capture:
    Nom : noP_Q..jpg
Affichages : 168
Taille : 68,5 Ko
    C'est dans Excel 2016 (Famille et petite entreprise) qui ne possède pas Power Query. Si l'on clique sur "Ouvrir un fichier texte" on obtient la fenêtre classique "Ouvrir", mais que faire ensuite pour pallier l'absence de PQ ? Par exemple pour indiquer à quel emplacement, dans la feuille, Excel doit importer les données, et pour effectuer les traitements désirés ?
    Si l'on cherche à importer PQ comme AddOn, la réponse est que ce PQ est déjà présent dans cette version d'Excel, ce qui est faux, donc pas d'importation.
    Toute suggestion sera la bienvenue, merci.
    Cordialement
    touche_a_tout

  20. #20
    Invité
    Invité(e)
    Par défaut
    Bonjour touche_a_tout
    Coucou 78Chris

    Depuis 2010 est intégré à toutes les versions, ce n'est pas parce que les menus sont différents qu'il n'est pas là
    Nom : 2022-10-11_14h22_52.png
Affichages : 135
Taille : 11,2 Ko

    Une fois le fichier ouvert avec la fenêtre classique de l'explorateur Windows, que se passe t'il ?

    A+

Discussions similaires

  1. [phpBB][2] Récupérer sous forme de fichier html le code analysé
    Par ilood dans le forum Bibliothèques et frameworks
    Réponses: 4
    Dernier message: 07/02/2008, 17h28
  2. Réponses: 2
    Dernier message: 27/06/2007, 10h22
  3. Accents mal encodes apres sauvegarde sous forme de fichier
    Par KillMePlease dans le forum Langage
    Réponses: 5
    Dernier message: 03/11/2006, 15h01
  4. Download automatique d'un flux sous forme de fichier.
    Par Invité dans le forum Langage
    Réponses: 4
    Dernier message: 11/10/2006, 16h53
  5. Exportattion de données sous forme de fichiers
    Par bidson dans le forum XMLRAD
    Réponses: 20
    Dernier message: 08/06/2004, 13h25

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