fusion de plusieurs fichiers

  • Initiateur de la discussion sos93
  • Date de début
S

sos93

Guest
Bonjour à tous

je suis tres debutante: j'ai plusieurs fichiers excel que je souhaite fusionner en selectionnant que qques colonnes et lignes ,en 1 fichier

merci pour votre aide

a+
:eek: :eek: :eek:
 

Hellboy

XLDnaute Accro
Bonsoir sos93

Il manque de l'informations pour que le code suivant fasse tout ce que tu souhaite. Lit les commentaires s.v.p.
Code:
Dim vFichiers As Variant, vFileToOpen As Variant
    vFichiers = Application.GetOpenFilename('*.xls, *.xls', , 'Tous pour un et un pour tous', , True)
    Application.ScreenUpdating = False
    For Each vFileToOpen In vFichiers
        'Doit connaitre ici plus de détails pour savoir quel colonne et ligne que tu visent
        'Et ou tu  veux les mettrent. A la suite en ligne ou en colonnes
    Next vFileToOpen
 
S

sos93

Guest
Tout d'abord merci pour ta réponse
je souhaite exporter toutes les colonnes ,par exemple :a, b , c
des fichiers excel qui m'interresent vers les colonnes ( a, b ,c) d' 1 fichier
la meme chose pour les lignes 1,2,3 de ts mes fichiers vers les 1,2,3 d'1 fichier


merci
 

Hellboy

XLDnaute Accro
Bonsoir sos93

Je n'ai pas été tout a fait clair dans ma demande. Imagine que l'on creer un nouveau fichier qu'on appel 'RéunirTous.xls' et que l'on vient d'importer tes données ( en passant je supposse que tu n'as q'une seule feuil ds tes fichiers, si ce n'est pas le cas, alors il faut tout reviser) du premier fichier de 10 au total. Imagine que l'on a remplit les lignes 1,2,3 et les colonnes A,B,C. Maintenant, on passe au deuxième fichier. Les nouvelles données du fichier numéro 2 que l'on importe dans notre fihier unique( 'RéunirTous.xls') ou iront-elles ? Sous la lignes 3 ou après la colonne C. Je pense que c'est après la ligne 3, mais je veux juste confirmer avec toi.

Et sur ce, je te dis À demain.
 

Hellboy

XLDnaute Accro
Hello Helen

Je te joint un fichier qui devrait faire ce que tu désire accomplir. Lorsque tu ouvrira le fichier, il te demande si tu veux l'ouvrir en lecture seul, répond Oui. La macro suivante va s'exécuter d'elle même par la suite.
Code:
Private Sub Workbook_Open()
Dim vFichiers As Variant, vFileToOpen As Variant
    vFichiers = Application.GetOpenFilename('*.xls, *.xls', , 'Tous pour un et un pour tous', , True)
    Application.ScreenUpdating = False
    With ActiveWorkbook.Sheets(1)
        For Each vFileToOpen In vFichiers
            Workbooks.Open vFileToOpen
            Range(Cells(1, 1), Cells(Cells(65536, 1).End(xlUp).Row, Cells(1, 255).End(xlToLeft).Column)).Copy _
            Destination:=.Cells(.Cells(65536, 1).End(xlUp).Row, 1)
            ActiveWorkbook.Close
        Next vFileToOpen
    End With
    Application.ScreenUpdating = True
End Sub

J'oubliais, met tout fichier au meme endroit, et sélectionne les tous a la fois.

c ya !

[file name=FromHellBoy.zip size=4993]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/FromHellBoy.zip[/file]

Message édité par: Hellboy, à: 28/05/2005 23:35
 

Pièces jointes

  • FromHellBoy.zip
    4.9 KB · Affichages: 51
S

sos93

Guest
Par contre peux me preciser les arguments de la fonction : Application.GetOpenFilename('*.xls, *.xls', , 'Tous pour un et un pour tous', , True)

et de


Workbooks.Open vFileToOpen
Range(Cells(1, 1), Cells(Cells(65536, 1).End(xlUp).Row, Cells(1, 255).End(xlToLeft).Column)).Copy _ Destination:=.Cells(.Cells(65536, 1).End(xlUp).Row, 1)
ActiveWorkbook.Close

MERCI
a+

helen
 

Hellboy

XLDnaute Accro
Bonjour Helen

En passant, le premier bonjour que tu as adressé au forum, ne compte que pour une fois. ;)

Voici les réponse a tes questions:

1- 'Application.GetOpenFilename('*.xls, *.xls', , 'Tous pour un et un pour tous', , True)'

Ceci simule l'ouverture de un ou plusieurs fichier. Dans ce cas si, tu peut en ouvrir plus de un a la fois. Les argument à l'intérieur de la commande 'GetOpenFilename' sont les suivant: Les deux premiers sont: Cette chaîne est constituée de paires de chaînes de caractères représentant le filtre de fichier suivies de la spécification de filtre de fichier à caractère générique. Chaque paire distincte est contenue dans la liste déroulante Type de fichier. Par exemple, la chaîne suivante spécifie deux filtres de fichiers (fichiers texte et macros complémentaires) : ' Fichiers texte (*.txt),*.txt,Macros complémentaires (*.xla),*.xla '. Dans notre cas se sont seulement les fichiers Excel qu'on peut choisir.
En deuxime partie tu as le titre de la boite de dialogue qui apparait a l'écran. Et enfin le 'True' permet la sélection multiple de fichier.


2- En gros, tous ce que tu as mis en bleu dans celle-ci, sert un a prendre un point de départ ex:(cells(1,1) meme chose que la cellule a1, c-a-d cells(ligne 1 ,colonne 1 ). Le reste se sont des facon de faire pour repérer la dernière ligne qui contient de l'information et la meme chose pour connaitre la derniere colonne.

Donc, en appliquant cette façon de faire, je m'assure d'englober toutes les infos qu'il y en ait plus ou moins pour chaques fichiers.

Pour t'expliqer encore plus en détail, il me faudrait écrire un roman ou etre en communication directe. ça serait plus facile.

Est-ce que tu l'as testé ?
 
S

sos93

Guest
Bonsoir philippe

je vais le tester demain au boulot car je l'englobe apres un lancement de script shell

je ne manquerai pas de te dire des demain ce qu' il en ai

merci

a demain

helen

ps : Tu es canadien???
 
S

sos93

Guest
Salut,

je te pose cette question car j'ai vecu 4 mois à montreal :--))

Pour la macro ça fonctionne mais je n'arrive pas à recuperer ce que je veux, en faite j'ai pas trop compris l'explication des arguments : je souhaite recuperer la colonne F : avec les lignes 11,13,17,19,21,30,109

merci

ps :quel temps fait il au quebec???
je me souviens de qques bieres (bien forte ) tel que la mort subite....

:eek:
 
S

sos93

Guest
j'oublie

pour etre plus précise:
ma colonne F11 du fichier1 doit se retrouver sur la colonne A1 du main.xls
ma colonne F13 du fichier1 doit se retrouver sur la colonne b1 du main.xls
...

ma colonne F11 du fichier2 doit se retrouver sur la colonne A2 du main.xls

ma colonne F13 du fichier2 doit se retrouver sur la colonne b2 du main.xls
...


a+
:eek: :eek:
 

Hellboy

XLDnaute Accro
Bonjour sos93

Il fait un temps de chien ici. Et moi je bois de la Beck. Un peu moins forte que celle que tu mentionne. :)

pour etre plus précise:
ma colonne F11 du fichier1 doit se retrouver sur la colonne A1 du main.xls
ma colonne F13 du fichier1 doit se retrouver sur la colonne b1 du main.xls
...

ma colonne F11 du fichier2 doit se retrouver sur la colonne A2 du main.xls

ma colonne F13 du fichier2 doit se retrouver sur la colonne b2 du main.xls
...

Misère, ceci n'est pas un détail, c'est une demande très précise qui diffère de la première demande. :angry: Avant que je modifie le code que je t'ai envoyé, il faut que tu me confirme qu'il n'y a pas d'autre détails important que ceux que tu m'as donnés lors de ton dernier message.

merci!
 

Discussions similaires

Réponses
7
Affichages
433
Réponses
7
Affichages
247

Statistiques des forums

Discussions
312 613
Messages
2 090 233
Membres
104 456
dernier inscrit
mango53200