Déplacer plusieurs feuilles de plusieurs fichiers dans 1 fichier

  • Initiateur de la discussion Initiateur de la discussion G vincent
  • 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 !

G

G vincent

Guest
Slt au forum,

Voilà, j'ai besoin de faire une macro. Qui permet d'ouvrir plusieurs fichiers textes. Puis pour chacun d'entre eux de copier toutes les feuilles qu'ils contiennent dans un nouveau fichier.A noter que je ne connaît ni le nom des fichiers ni le nom des feuilles. Mais je n'y arrive pas, car il va me cherher des feuilles qui nexiste pas. Et voilà le code que j'ai écrit pour savoir ce qui passe:

Sub ouvre_fichier()
Application.Dialogs(xlDialogOpen).Show

End Sub
Sub générale()
Dim c As Workbook
Dim f As Worksheet

Application.Run "ouvre_fichier"
Workbooks.Add
ActiveWorkbook.SaveAs Filename:="C:\mesure\essai.xls", FileFormat:=xlNormal
For Each c In Workbooks
MsgBox c.Name
For Each f In Worksheets
MsgBox f.Name
Next
Next
End Sub

Résultat, dans chaque fichier il trouve feuil1,2,3 alors qu'il y en a qu'1 ou même si elles n'ont pas ces noms.

Merci d'avance au forum et à tous ce qui m'auront aidé,
cordialement G vincent.
 
Re : Déplacer plusieurs feuilles de plusieurs fichiers dans 1 fichier

Slt au forum,

Voilà, j'ai besoin de faire une macro. Qui permet d'ouvrir plusieurs fichiers textes. Puis pour chacun d'entre eux de copier toutes les feuilles qu'ils contiennent dans un nouveau fichier.A noter que je ne connaît ni le nom des fichiers ni le nom des feuilles. Mais je n'y arrive pas, car il va me cherher des feuilles qui nexiste pas. Et voilà le code que j'ai écrit pour savoir ce qui passe:

......

bonjour G vincent,

comment sont structurés tes fichiers textes ?
comment peuvent-ils avoir plusieurs feuilles ?

a+
 
Re : Déplacer plusieurs feuilles de plusieurs fichiers dans 1 fichier

re bonjour,

les données sont séparées avec des , ou des ; ?
les fichiers textes sont-ils tous dans le même répertoire ?
(et enfin 🙂) Si oui, est-ce que le répertoire en question ne contient que ces fichiers ?

à te relire

a+
 
Re : Déplacer plusieurs feuilles de plusieurs fichiers dans 1 fichier

Les fichiers ont tous pour séparateur ,

Ils ne sont pas tous nécessairement dans le même répertoire et les répertoires ou ils se trouvent ne contiennent pas que ces fichiers la.
 
Re : Déplacer plusieurs feuilles de plusieurs fichiers dans 1 fichier

re,

dans la macro, tu remplaces la ligne
Code:
textFileName = Application.GetOpenFilename(filefilter:="[B][COLOR=Red]Fichier CSV, *.csv;*.txt[/COLOR][/B]")
par
Code:
textFileName = Application.GetOpenFilename(filefilter:="[COLOR=Red][B]Fichier, *.*[/B][/COLOR]")
a+
 
Dernière édition:
Re : Déplacer plusieurs feuilles de plusieurs fichiers dans 1 fichier

Merci beaucoup pour ton aide mromain, je viens de faire la modif, sa à l'air de marcher.Je me pencherai sur le code plutard.Merci encore.

A+
 
Re : Déplacer plusieurs feuilles de plusieurs fichiers dans 1 fichier

Bonjour Mromaim,

Ton code marche très bien, mais ne serait-il pas possible de pouvoir sélectionner plusieurs fichiers à la fois et de les récupérer tous en même temps?

Cordialement Gvincent.
 
Re : Déplacer plusieurs feuilles de plusieurs fichiers dans 1 fichier

bonjour G vincent,

essaye en remplaçant la macro "import" avec celle-là
Code:
Sub import()
Dim lesFichiers, i As Integer
lesFichiers = Application.GetOpenFilename("Fichier, *.*", , , , True)
For i = LBound(lesFichiers) To UBound(lesFichiers)
    ThisWorkbook.Sheets.Add after:=ThisWorkbook.Sheets(ThisWorkbook.Sheets.Count)
    rep = CsvToXls(ThisWorkbook.Sheets(ThisWorkbook.Sheets.Count), lesFichiers(i))
Next i
End Sub

a+
 
Re : Déplacer plusieurs feuilles de plusieurs fichiers dans 1 fichier

slt,

J'ai remplacé la Sub import par la nouvelle, et lorsque je la lance il me surligne
LesFichiers dans la ligne rep= et la boîte d'erreur dit erreur de compilation, Type d'argument ByRef incompatible.

Cordialement G vincent,
 
Re : Déplacer plusieurs feuilles de plusieurs fichiers dans 1 fichier

re,

essaye avec ça :
Code:
Sub import()
Dim lesFichiers, i As Integer
lesFichiers = Application.GetOpenFilename("Fichier, *.*", , , , True)
For i = LBound(lesFichiers) To UBound(lesFichiers)
    ThisWorkbook.Sheets.Add after:=ThisWorkbook.Sheets(ThisWorkbook.Sheets.Count)
    rep = CsvToXls(ThisWorkbook.Sheets(ThisWorkbook.Sheets.Count), [COLOR=Red][B]CStr([/B][/COLOR]lesFichiers(i)[B][COLOR=Red][B])[/B][/COLOR][/B]
)
Next i

a+
End Sub
 
- 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
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

P
Réponses
4
Affichages
945
Prisme974
P
U
Réponses
0
Affichages
565
U
K
Réponses
8
Affichages
2 K
kamal.elkakiri
K
L
Réponses
1
Affichages
1 K
Lucien31
L
A
Réponses
17
Affichages
3 K
M
Réponses
2
Affichages
908
melouze
M
Retour