Regrouper plusieurs fichiers excel ayant 2 colonnes en un seul
Fermé
linfoge
Messages postés
7
Date d'inscription
samedi 28 décembre 2019
Statut
Membre
Dernière intervention
29 décembre 2019
-
29 déc. 2019 à 00:04
yg_be Messages postés 21303 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 18 mars 2023 - 29 déc. 2019 à 16:11
yg_be Messages postés 21303 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 18 mars 2023 - 29 déc. 2019 à 16:11
A voir également:
- Regrouper plusieurs fichiers excel ayant 2 colonnes en un seul
- Liste déroulante excel - Guide
- Formule excel - Guide
- Dans le texte, un seul mot a réellement été écrit en lettres capitales (majuscules). quel est ce mot ? ✓ - Forum Word
- Regrouper plusieurs pdf en un seul - Guide
- Wetransfer gratuit fichiers lourd - Guide
3 réponses
jordane45
Messages postés
37253
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
17 mars 2023
4 551
29 déc. 2019 à 04:10
29 déc. 2019 à 04:10
Bonjour,
Oui... et ?
Qu'as tu essayé ? Sur quoi bloques tu exactement ?
Les fichiers se trouvent dans le même dossier ?
Sachant que ce genre de question est déjà posée des millions de fois sur ce forum et d'autres.... tu devrais trouver sans mal la réponse à ta question.
Reviens nous voir si tu rencontres des difficultés en expliquant ce que tu auras essayé et avec le code à l’Appui.
NB: Pour poster ton code sur le forum, tu devras utiliser les balises de code
https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code
?
Oui... et ?
Qu'as tu essayé ? Sur quoi bloques tu exactement ?
Les fichiers se trouvent dans le même dossier ?
Sachant que ce genre de question est déjà posée des millions de fois sur ce forum et d'autres.... tu devrais trouver sans mal la réponse à ta question.
Reviens nous voir si tu rencontres des difficultés en expliquant ce que tu auras essayé et avec le code à l’Appui.
NB: Pour poster ton code sur le forum, tu devras utiliser les balises de code
https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code
?
yg_be
Messages postés
21303
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
18 mars 2023
1 326
29 déc. 2019 à 11:15
29 déc. 2019 à 11:15
bonjour, tu donnes très peu d'informations utiles.
je comprends que tu as un fichier, que tu appelles "global", dans lequel tu veux recopier (où, quel onglet, quelle position?) une colonne (laquelle, quel onglet, quelle position?) se trouvant dans des fichiers (lesquels, où, quels noms?).
le fichier global est-il vide au départ? quand cela va-t'il s'exécuter?
je comprends que tu as un fichier, que tu appelles "global", dans lequel tu veux recopier (où, quel onglet, quelle position?) une colonne (laquelle, quel onglet, quelle position?) se trouvant dans des fichiers (lesquels, où, quels noms?).
le fichier global est-il vide au départ? quand cela va-t'il s'exécuter?
linfoge
Messages postés
7
Date d'inscription
samedi 28 décembre 2019
Statut
Membre
Dernière intervention
29 décembre 2019
29 déc. 2019 à 12:35
29 déc. 2019 à 12:35
bonjour,
je pars de plusieurs fichiers contenant chacun 2 colonnes dans la feuil1
tous ces fichiers sont dans le même dossier
le fichier global est vide oui
j'ai mis mon code dans la partie vba du fichier global vide et lorsque je l'execute il me cree un fichier vide renommé feuil1
je pars de plusieurs fichiers contenant chacun 2 colonnes dans la feuil1
tous ces fichiers sont dans le même dossier
le fichier global est vide oui
j'ai mis mon code dans la partie vba du fichier global vide et lorsque je l'execute il me cree un fichier vide renommé feuil1
yg_be
Messages postés
21303
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
18 mars 2023
1 326
29 déc. 2019 à 15:45
29 déc. 2019 à 15:45
tu écris que tu veux copier dans un fichier existant, alors pourquoi créer le fichier résultat?
je suggère de remplacer ceci:
je suggère de remplacer ceci:
' Créer le fichier résultat Set res = Workbooks.Add(xlWBATWorksheet)par cela:
' Utiliser le fichier contenant le code VBA comme fichier résultat Set res = ThisWorkbook
linfoge
Messages postés
7
Date d'inscription
samedi 28 décembre 2019
Statut
Membre
Dernière intervention
29 décembre 2019
29 déc. 2019 à 15:49
29 déc. 2019 à 15:49
je vais changer ça merci
linfoge
Messages postés
7
Date d'inscription
samedi 28 décembre 2019
Statut
Membre
Dernière intervention
29 décembre 2019
29 déc. 2019 à 15:49
29 déc. 2019 à 15:49
et je vous retiens au courant
linfoge
Messages postés
7
Date d'inscription
samedi 28 décembre 2019
Statut
Membre
Dernière intervention
29 décembre 2019
29 déc. 2019 à 15:52
29 déc. 2019 à 15:52
lorsque je change cette ligne et que j'execute mon code rien n'apparait
yg_be
Messages postés
21303
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
18 mars 2023
1 326
>
linfoge
Messages postés
7
Date d'inscription
samedi 28 décembre 2019
Statut
Membre
Dernière intervention
29 décembre 2019
29 déc. 2019 à 15:56
29 déc. 2019 à 15:56
quelques conseils généraux pour analyser le comportement d'un code: https://www.commentcamarche.net/contents/1381-debogage
linfoge
Messages postés
7
Date d'inscription
samedi 28 décembre 2019
Statut
Membre
Dernière intervention
29 décembre 2019
>
yg_be
Messages postés
21303
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
18 mars 2023
29 déc. 2019 à 16:00
29 déc. 2019 à 16:00
mais lorsque je lance le programme il s’exécute et aucune erreur s'affiche
c'est juste qu'il ne me fait rien
c'est juste qu'il ne me fait rien
29 déc. 2019 à 12:42
oui en effet j'ai trouvé plusieurs forum avec cette question mais je n'arrive pas à résoudre le mien c'est pour cela que j'ai proposer la mienne si quelqu'un peut m'aider personnellement
j'ai essayé ce code qui me semblait etre la solution de mon problème, j'ai changé juste le repertoire et le numero de la ligne que je veux copier soit la ligne : Set rng = wbk.Worksheets(1).UsedRange.Columns(2)
Public Sub Regrouper_Fichiers()
' regroupe dans les colonnes de la feuille 1 d'un fichier,
' la colonne A de chaque fichier excel d'un répertoire.
'
Dim fso As Object 'Système de fichiers
Dim rep As Object 'Répertoire
Dim cfr As Object 'Collection de fichiers du répertoire
Dim fic As Object 'Fichier (élément de la collection cfr)
Dim wbk As Workbook 'Classeur
Dim res As Workbook 'Classeur resultat
Dim rng As Range 'Plage de cellules
Dim dst As Range 'Cellule de destination
Dim pth As String 'Chemin du répertoire
' Définir le répertoire à lire
pth = "D:\TEMP"
' Créer le fichier résultat
Set res = Workbooks.Add(xlWBATWorksheet)
Set dst = res.Worksheets(1).Range("A1")
' Lecture du répertoire
Set fso = CreateObject("Scripting.FileSystemObject")
Set rep = fso.GetFolder(pth)
Set cfr = rep.Files
' Contrôler chaque fichier du répertoire
For Each fic In cfr
' - Vérifier s'il s'agit d'un fichier Excel...
If StrComp(fso.GetExtensionName(fic.Name), "xlsx", vbTextCompare) = 0 Then
' ... dans l'affirmative, ouvrir le fichier et mettre à jour les liaisons
Set wbk = Workbooks.Open(Filename:=pth & "\" & fic.Name, UpdateLinks:=xlUpdateLinksAlways)
' Placer le nom du fichier en titre de colonne résultat
dst.Value = fic.Name
' Copier la colonne en dessous
Set rng = wbk.Worksheets(1).UsedRange.Columns(2)
rng.Copy dst.Offset(1)
' Fermer le fichier sans le modifier
wbk.Close False
' Destination sur colonne suivante
Set dst = dst.Offset(0, 1)
End If
Next fic
End Sub
Mais malgré ça ça ne fonctionne pas...