Importer les feuilles 1 des fichiers d'un même répertoire

  • Initiateur de la discussion Initiateur de la discussion Geely
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Geely

XLDnaute Occasionnel
Bonjour le forum,
Bonnes vacances ou bonnes reprises...

Je souhaite importer tous les "feuilles 1" des fichiers qui se trouvent dans un même répertoire.
Une macro me permet de sélectionner le répertoire, et ensuite je lance la deuxième macro qui copie chaque "feuille 1" de tous les fichiers du répertoire pour les copier dans mon fichier "Geely"
Je suis parti du code de JAM trouvé ici même.

Dans le fichier joint il y a les fichiers à importer


Gelly
 

Pièces jointes

Re : Importer les feuilles 1 des fichiers d'un même répertoire

Bonjour Sousou
Impeccable, j'importe bien uniquement les feuilles 1. merci

J'ai tenté d'effacer les feuilles (toutes sauf la une) dans le cas d'une autre importation. mais j'ai un code erreur.
Il faut pouvoir effacer les feuilles sauf la 1 (accueil).

Geely
 

Pièces jointes

Re : Importer les feuilles 1 des fichiers d'un même répertoire

Merci Sousou
ça fonctionne bien, j'ai du mettre augmenter les lignes et colonnes du fichier "accueil" sinon j'avais un message d'erreur (taille différente du fichier source).
J'ai également le message :"la méthode close de l'objet a échoué" des que j'ai des fichiers en .xlsx dans le répertoire.
cela doit être a cause du test sur le type de fichier. il faut rajouter un contole suplémentaire sur les fichiers en .xlsx

Geely
 
Re : Importer les feuilles 1 des fichiers d'un même répertoire

Des qu'il y a d'autres types de fichier dans le répertoire j'ai le message d'erreur, pourtant le code parait bon

Code:
If Right$(oFile.Name, 4) = ".xls" Then   'test type de fichier
            Workbooks.Open Range("sPath") & "\" & oFile.Name, 0 '<- 0: ne pas mettre à jour les liens externes.
            Set wkbSource = ActiveWorkbook            
            ' On copie chaque feuille 1 de chaque fichier trouvé
            wkbSource.Sheets(1).Copy after:=wkbMain.Sheets(wkbMain.Sheets.Count)
             
            End If

La fin de ma condition doit être au mauvais endroit

Geely
 
Dernière édition:
Re : Importer les feuilles 1 des fichiers d'un même répertoire

Bonjour à tous
Tu dois déplacer ton end if juste entre le next et wkbsource.close
wkbSource.Close SaveChanges:=False
End If
Next
En effet tu essais de fermer un fichier, mais ta boucle et ton test n'ont pas chargé de fichier extension non conforme
 
Re : Importer les feuilles 1 des fichiers d'un même répertoire

Bonjour à tous

Geely:
Sache que mon hygiène buccale est dans la norme.
Je ne penses pas suffisament p_er de la gu_ule pour que tu ne me salues pas 😉
A moins que tu aies zappé mon précédent message pour une raison que j'ignore 😉
 
Re : Importer les feuilles 1 des fichiers d'un même répertoire

Bonjour Staple1600
Effectivement j'ai zappé ton message, le rouge m'a peut être perturbé... désolé.

Si .xlsx alors cela fait 5 caractères et non 4 ...
or ton code est
If Right$(oFile.Name, 4) = ".xls"

en y regardant, ce n’était pas un problème du nombre de caractère, mais bien mon IF.

Mais bon; hygiène buccale ou pas j’aurai du te saluer.

J'en profite pour remercier ce site et toutes les personnes qui prennent le temps de répondre et de partager leurs connaissances.
Geely
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

D
  • Question Question
2
Réponses
28
Affichages
2 K
Deleted member 441486
D
  • Question Question
Microsoft 365 Code VBA
Réponses
10
Affichages
861
Retour