Fusionner plusieurs fichiers excel
Résolu/Fermé
Brabux
Messages postés
47
Date d'inscription
mardi 13 mai 2008
Statut
Membre
Dernière intervention
18 février 2012
-
12 nov. 2011 à 09:49
Patrice33740 Messages postés 8556 Date d'inscription dimanche 13 juin 2010 Statut Membre Dernière intervention 2 mars 2023 - 3 mars 2016 à 22:02
Patrice33740 Messages postés 8556 Date d'inscription dimanche 13 juin 2010 Statut Membre Dernière intervention 2 mars 2023 - 3 mars 2016 à 22:02
A voir également:
- Fusionner plusieurs fichiers excel
- Liste déroulante excel - Guide
- Fusionner plusieurs fichiers excel - Guide
- Renommer plusieurs fichiers - Guide
- Formule excel - Guide
- Comment fusionner des pdf sans logiciel - Guide
7 réponses
Brabux
Messages postés
47
Date d'inscription
mardi 13 mai 2008
Statut
Membre
Dernière intervention
18 février 2012
12 nov. 2011 à 18:52
12 nov. 2011 à 18:52
j'ai réussi a peu pres a faire ce que je voulais.
Il reste des erreurs, mais surtout et vraiment compliqué de faire en sorte de rassembler les entreprises du meme corps d'etat tout en comptant leur nombre et en moyennant leur note...
ici le fichier qui fusionne
http://www.fufox.net/?d=B84855D2D373
quelqu'un peut m'aider ?
merci
Il reste des erreurs, mais surtout et vraiment compliqué de faire en sorte de rassembler les entreprises du meme corps d'etat tout en comptant leur nombre et en moyennant leur note...
ici le fichier qui fusionne
http://www.fufox.net/?d=B84855D2D373
quelqu'un peut m'aider ?
merci
Patrice33740
Messages postés
8556
Date d'inscription
dimanche 13 juin 2010
Statut
Membre
Dernière intervention
2 mars 2023
1 776
12 nov. 2011 à 19:20
12 nov. 2011 à 19:20
Essaie ce code :
Option Explicit Option Private Module ' Public Sub Synthèse_Classeurs_AE() Dim wbk As Workbook 'Classeur Dim Système As Object 'Système de fichiers Dim Dossier As Object 'Répertoire Dim Fichiers As Object 'Collection de fichiers du répertoire Dossier Dim Fichier As Object 'Fichier (élément de la collection Fichiers) Dim Nom_Fichier As String 'Nom du fichier Dim Nom_Dossier As String 'Nom du dossier 'Répertoire des fichiers AE Nom_Dossier = ThisWorkbook.Path & "/AE" 'Lecture du répertoire Set Système = CreateObject("Scripting.FileSystemObject") Set Dossier = Système.GetFolder(Nom_Dossier) Set Fichiers = Dossier.Files '- Contrôle de chaque le fichier du répertoire For Each Fichier In Fichiers '- Vérifier s'il s'agit d'un fichier Excel... If StrComp(Système.GetExtensionName(Fichier.name), "xls", vbTextCompare) = 0 Then '... dans l'affirmative, ouvrir le fichier et mettre à jour les liaisons Nom_Fichier = Nom_Dossier & "\" & Fichier.name Set wbk = Workbooks.Open(Filename:=Nom_Fichier, UpdateLinks:=xlUpdateLinksNever) Call Ajouter_Données_AE(wbk) wbk.Close SaveChanges:=False End If Next Fichier End Sub Public Sub Ajouter_Données_AE(wbk As Workbook) Dim celOrg As Range Dim celDst As Range 'Première info de AE Set celOrg = wbk.Worksheets(1).Range("A20") 'Dernière cellule utilisée de la première colonne du fichier retour Set celDst = ThisWorkbook.Worksheets(1).Cells(ThisWorkbook.Worksheets(1).Rows.Count, 1).End(xlUp) 'Copie des données Do While celOrg.Formula <> "" Set celDst = celDst.Offset(1) 'Corps d'état celDst.Value = celOrg.Value 'Entreprise celDst.Offset(, 1).Value = celOrg.Offset(, 1).Value 'Nombre d'opérations '- je ne sais pas d'ou vient cette info 'Note celDst.Offset(, 3).Value = celOrg.Offset(, 5).Value 'suivant Set celOrg = celOrg.Offset(1) Loop End Sub
Brabux
Messages postés
47
Date d'inscription
mardi 13 mai 2008
Statut
Membre
Dernière intervention
18 février 2012
13 nov. 2011 à 08:30
13 nov. 2011 à 08:30
bonjour Patrice,
j'ai essayé de la facon suivante :
j'ouvre VBA, je copie colle ton code sur la page, je retourne sur la feuille excel et j'execute la macro, un bouton de commande serait l'idéal, vu que je suis mauvais voir une buse en VBA.
elle bloque a la 2eme ligne en disant : "erreur de compilation : option private module, non permise dans un module objet".
Pour ce qui est du nombre d'opération, c'est qu'il va y avoir forcement des doublons d'entreprises, alors je voulais comptabilier le nombre de fois citée et faire la moyenne de leur note.
merci encore
j'ai essayé de la facon suivante :
j'ouvre VBA, je copie colle ton code sur la page, je retourne sur la feuille excel et j'execute la macro, un bouton de commande serait l'idéal, vu que je suis mauvais voir une buse en VBA.
elle bloque a la 2eme ligne en disant : "erreur de compilation : option private module, non permise dans un module objet".
Pour ce qui est du nombre d'opération, c'est qu'il va y avoir forcement des doublons d'entreprises, alors je voulais comptabilier le nombre de fois citée et faire la moyenne de leur note.
merci encore
Brabux
Messages postés
47
Date d'inscription
mardi 13 mai 2008
Statut
Membre
Dernière intervention
18 février 2012
13 nov. 2011 à 18:43
13 nov. 2011 à 18:43
re bonjour,
J'ai bidouillé un truc :
supprimé :
Option Explicit
Option Private Module
'
Ca buggait comme indiqué sur mon message au dessus.
et puis après, ca s'arretait en disant chemin introuvable : j'ai donc modifié :
Nom_Dossier = ThisWorkbook.Path & "/AE"
par :
Nom_Dossier = ThisWorkbook.Path & ""
ca rappatrie bien les infos de tous mes fichiers, seulement ca bug aussi sur celui avec le code.
je cherche encore pour le bouton mais surtout Pour ce qui est du nombre d'opération, c'est qu'il va y avoir forcement des doublons d'entreprises, alors je voulais comptabilier le nombre de fois citée et faire la moyenne de leur note.
merci d'avance,
J'ai bidouillé un truc :
supprimé :
Option Explicit
Option Private Module
'
Ca buggait comme indiqué sur mon message au dessus.
et puis après, ca s'arretait en disant chemin introuvable : j'ai donc modifié :
Nom_Dossier = ThisWorkbook.Path & "/AE"
par :
Nom_Dossier = ThisWorkbook.Path & ""
ca rappatrie bien les infos de tous mes fichiers, seulement ca bug aussi sur celui avec le code.
je cherche encore pour le bouton mais surtout Pour ce qui est du nombre d'opération, c'est qu'il va y avoir forcement des doublons d'entreprises, alors je voulais comptabilier le nombre de fois citée et faire la moyenne de leur note.
merci d'avance,
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Patrice33740
Messages postés
8556
Date d'inscription
dimanche 13 juin 2010
Statut
Membre
Dernière intervention
2 mars 2023
1 776
Modifié par Patrice33740 le 14/11/2011 à 00:01
Modifié par Patrice33740 le 14/11/2011 à 00:01
« j'ouvre VBA, je copie colle ton code sur la page, »
C'est pour cela que ça marche pas. Il faut coller le code dans un module, pas dans la feuille :
Ouvre VBA / Insertion / Module / Colle le code dedans
Créér un répertoire AE dans le même répertoire que retour.xls et y déplacer tous les fichiers AE
Pour insérer un bouton sur la feuille :
Onglet développeur / Inserer / dans Contrôle ActiveX, prendre le bouton et le dessiner sur la feuille.
Double clic sur le bouton (on bascule vers le VBA du bouton) et saisir ce code :
Revenir dans Excel et désactiver le mode création.
Cordialement
Patrice
C'est pour cela que ça marche pas. Il faut coller le code dans un module, pas dans la feuille :
Ouvre VBA / Insertion / Module / Colle le code dedans
Créér un répertoire AE dans le même répertoire que retour.xls et y déplacer tous les fichiers AE
Pour insérer un bouton sur la feuille :
Onglet développeur / Inserer / dans Contrôle ActiveX, prendre le bouton et le dessiner sur la feuille.
Double clic sur le bouton (on bascule vers le VBA du bouton) et saisir ce code :
Private Sub CommandButton1_Click() Call Synthèse_Classeurs_AE End Sub
Revenir dans Excel et désactiver le mode création.
Cordialement
Patrice
Brabux
Messages postés
47
Date d'inscription
mardi 13 mai 2008
Statut
Membre
Dernière intervention
18 février 2012
14 nov. 2011 à 18:23
14 nov. 2011 à 18:23
ca marche nickel.
Merci Patrice.
Merci Patrice.
Patrice33740
Messages postés
8556
Date d'inscription
dimanche 13 juin 2010
Statut
Membre
Dernière intervention
2 mars 2023
1 776
>
MomoAbou
3 mars 2016 à 22:02
3 mars 2016 à 22:02
As-tu créé le répertoire AE ???
Patrice33740
Messages postés
8556
Date d'inscription
dimanche 13 juin 2010
Statut
Membre
Dernière intervention
2 mars 2023
1 776
14 nov. 2011 à 18:52
14 nov. 2011 à 18:52
De rien, au plaisir de te relire sur le Forum