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 :

Copier/coller ligne par ligne


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti Avatar de lulu_MAHC
    Homme Profil pro
    Stagiaire
    Inscrit en
    Février 2016
    Messages
    53
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Stagiaire
    Secteur : Industrie

    Informations forums :
    Inscription : Février 2016
    Messages : 53
    Par défaut Copier/coller ligne par ligne
    Salut All,

    j'ai un petit soucis .. Je souhaite copier et coller un fichier texte dans un classeur excel a l'aide d une macro , bien entendu en VBA. Jusqu'ici tout va bien , je sais le faire mais ce fichier est un peu special, il ne contient qu'une seule (et tres tres longue ) ligne ( voir photo 1 ci jointe )

    En utilisant la photo 1 pour exemple, le traitement que je voudrais faire c'est de copier et de coller chaque info contenue entre les " < > " et cela ligne par ligne dans un classeur exel

    En fait je voudrais passer de la photo 1 a la photo 2 mais pour toutes les infos du fichier

    Photo 1 : Nom : Photo1.PNG
Affichages : 347
Taille : 9,8 Ko

    Apres avoir lance la macro je voudrais obtenir cela :

    Photo 2 : Nom : Photo2.PNG
Affichages : 407
Taille : 18,7 Ko


    merci d'avance pour toutes infos que vous pourriez me fournir

  2. #2
    Modérateur
    Avatar de kolodz
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2008
    Messages
    2 209
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Avril 2008
    Messages : 2 209
    Billets dans le blog
    52
    Par défaut
    Sans parler d'une automatisation via macro as-tu tester au niveau du notepad++ :
    Plugins >XML Tools >Pretty print (XML only - with line breaks)

    Sachant que notepad++ est aussi capable de faire des macros

    Source du plug-in : https://sourceforge.net/projects/npp...s/XML%20Tools/
    Si une réponse vous a été utile pensez à
    Si vous avez eu la réponse à votre question, marquez votre discussion
    Pensez aux FAQs et aux tutoriels et cours.

  3. #3
    Membre averti Avatar de lulu_MAHC
    Homme Profil pro
    Stagiaire
    Inscrit en
    Février 2016
    Messages
    53
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Stagiaire
    Secteur : Industrie

    Informations forums :
    Inscription : Février 2016
    Messages : 53
    Par défaut
    Effectivement je n'y avais pas penser .. C'est tres bien vu et (j 'attend d avoir les autorisations administrateurs pour installer et tester le plug in ) c'est bien quelque chose a tester... Neanmoins mon probleme est en fait un soucis rencontre sur quelques fichiers parmis quelques milliers lors du fonctionnement d une macro ecrite sous excel et qui fonctionne tres bien pour le reste des fichiers ... C'est pour cela que je souhaite Presque absolument me dirigier vers une solution macro/Excel

  4. #4
    Modérateur
    Avatar de kolodz
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2008
    Messages
    2 209
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Avril 2008
    Messages : 2 209
    Billets dans le blog
    52
    Par défaut
    Dans ton fichier XML, que tu veux mettre en ligne, as-tu des sous balises ?
    Le format "problématique" est-il variable ou fixe pour l'ensemble des fichiers que tu veux traiter ? Si c'est fixe, peux-tu nous donner un exemple dans une balise code ? (Bouton # dans l'IHM des messages)
    Si une réponse vous a été utile pensez à
    Si vous avez eu la réponse à votre question, marquez votre discussion
    Pensez aux FAQs et aux tutoriels et cours.

  5. #5
    Membre averti Avatar de lulu_MAHC
    Homme Profil pro
    Stagiaire
    Inscrit en
    Février 2016
    Messages
    53
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Stagiaire
    Secteur : Industrie

    Informations forums :
    Inscription : Février 2016
    Messages : 53
    Par défaut
    En fait mon fichier est une fiche produit, du coup chaque donnee technique du produit que je souhaite recuperer est entourer par les balises correspondante ,
    EX: <my:Project_Number>531365</my:Project_Number> mais c est grace a ces balises que je cherche, trouve , recupere , "nettoie" et transfere chaque donnee qui m'interesse
    Je ne sais pas ce que tu appelles sous balises ... :/

    Pour ce qui est du format problematique il peut legerement varier mais le principer est toujours le meme, c'est qu'il m'affiche tout en bout a bout sur une ou deux ligne ... c est donc inexploitable pour moi .. Je te joins un exemple ( j ai remplace les donnees interessante par des "??????" et j'ai raccourci le fichier car tres long , mais le principe est la
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <?xml version="1.0" encoding="UTF-8"?><?mso-infoPathSolution productVersion="11.0.8165" PIVersion="1.0.0.0" href="http://globalvjf/globalpet2003vjfarchive/PE2003VJF/Legacy%20Lux%20PSFs/Forms/GlobalPSFV1A.xsn" name="urn:schemas-microsoft-com:office:infopath:Global-PSF---InfoPath-template:-myXSD-2007-05-25T17-58-20" solutionVersion="1.0.0.1474" ?><?mso-application progid="InfoPath.Document"?><my:myFields xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:dfs="http://schemas.microsoft.com/office/infopath/2003/dataFormSolution" xmlns:s1="http://AdsiServices.WhoAmIRequest" xmlns:s2="http://AdsiServices.WhoAmIResponse" xmlns:ns1="http://AdsiServices.AdsiServicesPersonRequest" xmlns:ns2="http://AdsiServices.AdsiServicesPersonResponse" xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/" xmlns:tm="http://microsoft.com/wsdl/mime/textMatching/" xmlns:tns="http://AdsiServices_WS/findADPerson" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:http="http://schemas.xmlsoap.org/wsdl/http/" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:b="http://schemas.microsoft.com/BizTalk/2003" xmlns:ns3="http://AdsiServices_WS/getMyAccountInfo" xmlns:my="http://schemas.microsoft.com/office/infopath/2003/myXSD/2007-05-25T17:58:20" xmlns:xd="http://schemas.microsoft.com/office/infopath/2003" xml:lang="en-us"><my:Project_Number>???</my:Project_Number><my:Main_Number>????</my:Main_Number><my:Project_Type>??????????</my:Project_Type><my:Factory_Location>???</my:Factory_Location><my:Project_Description>???????????????</my:Project_Description><my:PSFTitle>??????????????</my:PSFTitle><my:Revision_Entry_Text>Updated shipping infos</my:Revision_Entry_Text><my:Current_Revision><my:Current_Rev>001</my:Current_Rev><my:Current_Rev_Date>2009-02-04</my:Current_Rev_Date><my:Current_Description>Updated shipping infos</my:Current_Description><my:Current_Modified_by>??????</my:Current_Modified_by><my:ShowHideRevisionHistory>0</my:ShowHideRevisionHistory><my:Current_Project_Number>????</my:Current_Project_Number></my:Current_Revision><my:Revision_Control><my:Revisions><my:Rev>000</my:Rev><my:Description>Original Document</my:Description><my:Modified_by>????????</my:Modified_by>
    Je precise que la grosse partie du debut du fichier m est completement inutile

  6. #6
    Modérateur
    Avatar de kolodz
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2008
    Messages
    2 209
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Avril 2008
    Messages : 2 209
    Billets dans le blog
    52
    Par défaut
    En ajoutant les balises fermantes manquantes (suite à la troncature du fichier)
    Un Pretty Print dans notepad++ donne le résultat suivant :
    Code XML : 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
    <?xml version="1.0" encoding="UTF-8"?>
    <?mso-infoPathSolution productVersion="11.0.8165" PIVersion="1.0.0.0" href="http://globalvjf/globalpet2003vjfarchive/PE2003VJF/Legacy%20Lux%20PSFs/Forms/GlobalPSFV1A.xsn" name="urn:schemas-microsoft-com:office:infopath:Global-PSF---InfoPath-template:-myXSD-2007-05-25T17-58-20" solutionVersion="1.0.0.1474" ?>
    <?mso-application progid="InfoPath.Document"?>
    <my:myFields xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:dfs="http://schemas.microsoft.com/office/infopath/2003/dataFormSolution" xmlns:s1="http://AdsiServices.WhoAmIRequest" xmlns:s2="http://AdsiServices.WhoAmIResponse" xmlns:ns1="http://AdsiServices.AdsiServicesPersonRequest" xmlns:ns2="http://AdsiServices.AdsiServicesPersonResponse" xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/" xmlns:tm="http://microsoft.com/wsdl/mime/textMatching/" xmlns:tns="http://AdsiServices_WS/findADPerson" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:http="http://schemas.xmlsoap.org/wsdl/http/" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:b="http://schemas.microsoft.com/BizTalk/2003" xmlns:ns3="http://AdsiServices_WS/getMyAccountInfo" xmlns:my="http://schemas.microsoft.com/office/infopath/2003/myXSD/2007-05-25T17:58:20" xmlns:xd="http://schemas.microsoft.com/office/infopath/2003" xml:lang="en-us">
    	<my:Project_Number>???</my:Project_Number>
    	<my:Main_Number>????</my:Main_Number>
    	<my:Project_Type>??????????</my:Project_Type>
    	<my:Factory_Location>???</my:Factory_Location>
    	<my:Project_Description>???????????????</my:Project_Description>
    	<my:PSFTitle>??????????????</my:PSFTitle>
    	<my:Revision_Entry_Text>Updated shipping infos</my:Revision_Entry_Text>
    	<my:Current_Revision>
    		<my:Current_Rev>001</my:Current_Rev>
    		<my:Current_Rev_Date>2009-02-04</my:Current_Rev_Date>
    		<my:Current_Description>Updated shipping infos</my:Current_Description>
    		<my:Current_Modified_by>??????</my:Current_Modified_by>
    		<my:ShowHideRevisionHistory>0</my:ShowHideRevisionHistory>
    		<my:Current_Project_Number>????</my:Current_Project_Number>
    	</my:Current_Revision>
    	<my:Revision_Control>
    		<my:Revisions>
    			<my:Rev>000</my:Rev>
    			<my:Description>Original Document</my:Description>
    			<my:Modified_by>????????</my:Modified_by>
    			...
    		</my:Revisions>
    	</my:Revision_Control>
    </my:myFields>
    Dans l'exemple, la balise <my:Description>Original Document</my:Description> est une balise enfante (ou sous balise) de la balise <my:Revisions>
    En vérifiant à nouveau le problème, il me semble que la FAQ suivante devrait résoudre le problème : Comment lire un fichier XML ?

    Une discussion similaire a aussi eu lieu là : VBA - Lire & Récupérer données XML > Excel

    Cordialement,
    Patrick Kolodziejczyk.
    Si une réponse vous a été utile pensez à
    Si vous avez eu la réponse à votre question, marquez votre discussion
    Pensez aux FAQs et aux tutoriels et cours.

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

Discussions similaires

  1. Excel 2010 Copier coller celulle avec condition ligne par ligne
    Par gilles171 dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 17/11/2014, 10h42
  2. Debutant copier/coller valeur dernier ligne colonne 13
    Par floflo83 dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 28/11/2009, 15h31
  3. Recherche avec InputBox puis Copier - Coller de la ligne
    Par bungler dans le forum Macros et VBA Excel
    Réponses: 9
    Dernier message: 20/07/2007, 15h34
  4. copier un fichier ligne par ligne
    Par Damien B. dans le forum C
    Réponses: 2
    Dernier message: 10/05/2007, 17h33
  5. Réponses: 62
    Dernier message: 05/07/2006, 13h48

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