Petit problème épineux :
Je dois copier plusieurs onglets (65) et les rassembler sous un seul
classeur xls.
Problème :
Les fameux 65 onglets sont présents dans autant de fichiers xls ...
Existe-il / Est-il possible d'automatiser la copie de ses onglets ? ... car
à l'heure actuelle, je dois ouvrir chaque fichier xls, puis faire une copie
de l'onglet vers le classeur où les 65 onglets seront rassembler ... long,
très long.
Petit problème épineux :
Je dois copier plusieurs onglets (65) et les rassembler sous un seul
classeur xls.
Problème :
Les fameux 65 onglets sont présents dans autant de fichiers xls ...
Existe-il / Est-il possible d'automatiser la copie de ses onglets ? ... car
à l'heure actuelle, je dois ouvrir chaque fichier xls, puis faire une copie
de l'onglet vers le classeur où les 65 onglets seront rassembler ... long,
très long.
Petit problème épineux :
Je dois copier plusieurs onglets (65) et les rassembler sous un seul
classeur xls.
Problème :
Les fameux 65 onglets sont présents dans autant de fichiers xls ...
Existe-il / Est-il possible d'automatiser la copie de ses onglets ? ... car
à l'heure actuelle, je dois ouvrir chaque fichier xls, puis faire une copie
de l'onglet vers le classeur où les 65 onglets seront rassembler ... long,
très long.
bonjour,
c'est absolument automatisable sans grande difficulté sous réserve que
1- tu connaissses le chemin exact ( donc le nom complet) des fichiers à
ouvrir
2-tu connaisses le nom des onglets à copier
3-que tu gères le changement de nom des onglets s'ils portent tous le
même nom dans chacun des fichiers
4-que tu gères les erreurs eventuelles.
5-evidemment le fichier de réception des onglets doit être ouvert et tu
dois gérer l'effacement des anciens onglets si c'est toujours le m^me
fichier de réception des données
Si tu es prêt à tout celà, pas de problème,ca roule.
A+Petit problème épineux :
Je dois copier plusieurs onglets (65) et les rassembler sous un seul
classeur xls.
Problème :
Les fameux 65 onglets sont présents dans autant de fichiers xls ...
Existe-il / Est-il possible d'automatiser la copie de ses onglets ? ... car
à l'heure actuelle, je dois ouvrir chaque fichier xls, puis faire une copie
de l'onglet vers le classeur où les 65 onglets seront rassembler ... long,
très long.
bonjour,
c'est absolument automatisable sans grande difficulté sous réserve que
1- tu connaissses le chemin exact ( donc le nom complet) des fichiers à
ouvrir
2-tu connaisses le nom des onglets à copier
3-que tu gères le changement de nom des onglets s'ils portent tous le
même nom dans chacun des fichiers
4-que tu gères les erreurs eventuelles.
5-evidemment le fichier de réception des onglets doit être ouvert et tu
dois gérer l'effacement des anciens onglets si c'est toujours le m^me
fichier de réception des données
Si tu es prêt à tout celà, pas de problème,ca roule.
A+
Petit problème épineux :
Je dois copier plusieurs onglets (65) et les rassembler sous un seul
classeur xls.
Problème :
Les fameux 65 onglets sont présents dans autant de fichiers xls ...
Existe-il / Est-il possible d'automatiser la copie de ses onglets ? ... car
à l'heure actuelle, je dois ouvrir chaque fichier xls, puis faire une copie
de l'onglet vers le classeur où les 65 onglets seront rassembler ... long,
très long.
bonjour,
c'est absolument automatisable sans grande difficulté sous réserve que
1- tu connaissses le chemin exact ( donc le nom complet) des fichiers à
ouvrir
2-tu connaisses le nom des onglets à copier
3-que tu gères le changement de nom des onglets s'ils portent tous le
même nom dans chacun des fichiers
4-que tu gères les erreurs eventuelles.
5-evidemment le fichier de réception des onglets doit être ouvert et tu
dois gérer l'effacement des anciens onglets si c'est toujours le m^me
fichier de réception des données
Si tu es prêt à tout celà, pas de problème,ca roule.
A+Petit problème épineux :
Je dois copier plusieurs onglets (65) et les rassembler sous un seul
classeur xls.
Problème :
Les fameux 65 onglets sont présents dans autant de fichiers xls ...
Existe-il / Est-il possible d'automatiser la copie de ses onglets ? ... car
à l'heure actuelle, je dois ouvrir chaque fichier xls, puis faire une copie
de l'onglet vers le classeur où les 65 onglets seront rassembler ... long,
très long.
Bonjour,
Et oui c'est bien ce qui me semblait. Il faut passer par de la prog. ,
j'avais déjà créé une macro dans ce sens, mais il était nécessaire de rentrer
manuellement le nom et chemin d'accès de chaque fichier xls, et finalement je
ne gagnais pas beaucoup de temps ... j'espèrais qu'il existe une solution
plus souple dans l'usage (le nom des 65 fichiers change à chaque
modification, tu es donc obligé de modifier la macro à chaque fois :-(
Merci quant même.bonjour,
c'est absolument automatisable sans grande difficulté sous réserve que
1- tu connaissses le chemin exact ( donc le nom complet) des fichiers à
ouvrir
2-tu connaisses le nom des onglets à copier
3-que tu gères le changement de nom des onglets s'ils portent tous le
même nom dans chacun des fichiers
4-que tu gères les erreurs eventuelles.
5-evidemment le fichier de réception des onglets doit être ouvert et tu
dois gérer l'effacement des anciens onglets si c'est toujours le m^me
fichier de réception des données
Si tu es prêt à tout celà, pas de problème,ca roule.
A+Petit problème épineux :
Je dois copier plusieurs onglets (65) et les rassembler sous un seul
classeur xls.
Problème :
Les fameux 65 onglets sont présents dans autant de fichiers xls ...
Existe-il / Est-il possible d'automatiser la copie de ses onglets ? ... car
à l'heure actuelle, je dois ouvrir chaque fichier xls, puis faire une copie
de l'onglet vers le classeur où les 65 onglets seront rassembler ... long,
très long.
Bonjour,
Et oui c'est bien ce qui me semblait. Il faut passer par de la prog. ,
j'avais déjà créé une macro dans ce sens, mais il était nécessaire de rentrer
manuellement le nom et chemin d'accès de chaque fichier xls, et finalement je
ne gagnais pas beaucoup de temps ... j'espèrais qu'il existe une solution
plus souple dans l'usage (le nom des 65 fichiers change à chaque
modification, tu es donc obligé de modifier la macro à chaque fois :-(
Merci quant même.
bonjour,
c'est absolument automatisable sans grande difficulté sous réserve que
1- tu connaissses le chemin exact ( donc le nom complet) des fichiers à
ouvrir
2-tu connaisses le nom des onglets à copier
3-que tu gères le changement de nom des onglets s'ils portent tous le
même nom dans chacun des fichiers
4-que tu gères les erreurs eventuelles.
5-evidemment le fichier de réception des onglets doit être ouvert et tu
dois gérer l'effacement des anciens onglets si c'est toujours le m^me
fichier de réception des données
Si tu es prêt à tout celà, pas de problème,ca roule.
A+
Petit problème épineux :
Je dois copier plusieurs onglets (65) et les rassembler sous un seul
classeur xls.
Problème :
Les fameux 65 onglets sont présents dans autant de fichiers xls ...
Existe-il / Est-il possible d'automatiser la copie de ses onglets ? ... car
à l'heure actuelle, je dois ouvrir chaque fichier xls, puis faire une copie
de l'onglet vers le classeur où les 65 onglets seront rassembler ... long,
très long.
Bonjour,
Et oui c'est bien ce qui me semblait. Il faut passer par de la prog. ,
j'avais déjà créé une macro dans ce sens, mais il était nécessaire de rentrer
manuellement le nom et chemin d'accès de chaque fichier xls, et finalement je
ne gagnais pas beaucoup de temps ... j'espèrais qu'il existe une solution
plus souple dans l'usage (le nom des 65 fichiers change à chaque
modification, tu es donc obligé de modifier la macro à chaque fois :-(
Merci quant même.bonjour,
c'est absolument automatisable sans grande difficulté sous réserve que
1- tu connaissses le chemin exact ( donc le nom complet) des fichiers à
ouvrir
2-tu connaisses le nom des onglets à copier
3-que tu gères le changement de nom des onglets s'ils portent tous le
même nom dans chacun des fichiers
4-que tu gères les erreurs eventuelles.
5-evidemment le fichier de réception des onglets doit être ouvert et tu
dois gérer l'effacement des anciens onglets si c'est toujours le m^me
fichier de réception des données
Si tu es prêt à tout celà, pas de problème,ca roule.
A+Petit problème épineux :
Je dois copier plusieurs onglets (65) et les rassembler sous un seul
classeur xls.
Problème :
Les fameux 65 onglets sont présents dans autant de fichiers xls ...
Existe-il / Est-il possible d'automatiser la copie de ses onglets ? ... car
à l'heure actuelle, je dois ouvrir chaque fichier xls, puis faire une copie
de l'onglet vers le classeur où les 65 onglets seront rassembler ... long,
très long.
re,
possible d'automatiser quand même si les fichiers sont dans le même
répertoire quand bien même ils auraient des noms différents à chaque fois.
Possible aussi si ce n'est pas dans le même répertoire de laisser
l'utilisateur choisir le répertoire puis d'explorer l'intégralité du
répertoire avec des critères d'extraction sur les fichiers Excel p.e.
En gros, tout est possible sous réserve d'avoir quelques invariants qui
permettent de programmer .
A+Bonjour,
Et oui c'est bien ce qui me semblait. Il faut passer par de la prog. ,
j'avais déjà créé une macro dans ce sens, mais il était nécessaire de rentrer
manuellement le nom et chemin d'accès de chaque fichier xls, et finalement je
ne gagnais pas beaucoup de temps ... j'espèrais qu'il existe une solution
plus souple dans l'usage (le nom des 65 fichiers change à chaque
modification, tu es donc obligé de modifier la macro à chaque fois :-(
Merci quant même.bonjour,
c'est absolument automatisable sans grande difficulté sous réserve que
1- tu connaissses le chemin exact ( donc le nom complet) des fichiers à
ouvrir
2-tu connaisses le nom des onglets à copier
3-que tu gères le changement de nom des onglets s'ils portent tous le
même nom dans chacun des fichiers
4-que tu gères les erreurs eventuelles.
5-evidemment le fichier de réception des onglets doit être ouvert et tu
dois gérer l'effacement des anciens onglets si c'est toujours le m^me
fichier de réception des données
Si tu es prêt à tout celà, pas de problème,ca roule.
A+Petit problème épineux :
Je dois copier plusieurs onglets (65) et les rassembler sous un seul
classeur xls.
Problème :
Les fameux 65 onglets sont présents dans autant de fichiers xls ...
Existe-il / Est-il possible d'automatiser la copie de ses onglets ? ... car
à l'heure actuelle, je dois ouvrir chaque fichier xls, puis faire une copie
de l'onglet vers le classeur où les 65 onglets seront rassembler ... long,
très long.
re,
possible d'automatiser quand même si les fichiers sont dans le même
répertoire quand bien même ils auraient des noms différents à chaque fois.
Possible aussi si ce n'est pas dans le même répertoire de laisser
l'utilisateur choisir le répertoire puis d'explorer l'intégralité du
répertoire avec des critères d'extraction sur les fichiers Excel p.e.
En gros, tout est possible sous réserve d'avoir quelques invariants qui
permettent de programmer .
A+
Bonjour,
Et oui c'est bien ce qui me semblait. Il faut passer par de la prog. ,
j'avais déjà créé une macro dans ce sens, mais il était nécessaire de rentrer
manuellement le nom et chemin d'accès de chaque fichier xls, et finalement je
ne gagnais pas beaucoup de temps ... j'espèrais qu'il existe une solution
plus souple dans l'usage (le nom des 65 fichiers change à chaque
modification, tu es donc obligé de modifier la macro à chaque fois :-(
Merci quant même.
bonjour,
c'est absolument automatisable sans grande difficulté sous réserve que
1- tu connaissses le chemin exact ( donc le nom complet) des fichiers à
ouvrir
2-tu connaisses le nom des onglets à copier
3-que tu gères le changement de nom des onglets s'ils portent tous le
même nom dans chacun des fichiers
4-que tu gères les erreurs eventuelles.
5-evidemment le fichier de réception des onglets doit être ouvert et tu
dois gérer l'effacement des anciens onglets si c'est toujours le m^me
fichier de réception des données
Si tu es prêt à tout celà, pas de problème,ca roule.
A+
Petit problème épineux :
Je dois copier plusieurs onglets (65) et les rassembler sous un seul
classeur xls.
Problème :
Les fameux 65 onglets sont présents dans autant de fichiers xls ...
Existe-il / Est-il possible d'automatiser la copie de ses onglets ? ... car
à l'heure actuelle, je dois ouvrir chaque fichier xls, puis faire une copie
de l'onglet vers le classeur où les 65 onglets seront rassembler ... long,
très long.
re,
possible d'automatiser quand même si les fichiers sont dans le même
répertoire quand bien même ils auraient des noms différents à chaque fois.
Possible aussi si ce n'est pas dans le même répertoire de laisser
l'utilisateur choisir le répertoire puis d'explorer l'intégralité du
répertoire avec des critères d'extraction sur les fichiers Excel p.e.
En gros, tout est possible sous réserve d'avoir quelques invariants qui
permettent de programmer .
A+Bonjour,
Et oui c'est bien ce qui me semblait. Il faut passer par de la prog. ,
j'avais déjà créé une macro dans ce sens, mais il était nécessaire de rentrer
manuellement le nom et chemin d'accès de chaque fichier xls, et finalement je
ne gagnais pas beaucoup de temps ... j'espèrais qu'il existe une solution
plus souple dans l'usage (le nom des 65 fichiers change à chaque
modification, tu es donc obligé de modifier la macro à chaque fois :-(
Merci quant même.bonjour,
c'est absolument automatisable sans grande difficulté sous réserve que
1- tu connaissses le chemin exact ( donc le nom complet) des fichiers à
ouvrir
2-tu connaisses le nom des onglets à copier
3-que tu gères le changement de nom des onglets s'ils portent tous le
même nom dans chacun des fichiers
4-que tu gères les erreurs eventuelles.
5-evidemment le fichier de réception des onglets doit être ouvert et tu
dois gérer l'effacement des anciens onglets si c'est toujours le m^me
fichier de réception des données
Si tu es prêt à tout celà, pas de problème,ca roule.
A+Petit problème épineux :
Je dois copier plusieurs onglets (65) et les rassembler sous un seul
classeur xls.
Problème :
Les fameux 65 onglets sont présents dans autant de fichiers xls ...
Existe-il / Est-il possible d'automatiser la copie de ses onglets ? ... car
à l'heure actuelle, je dois ouvrir chaque fichier xls, puis faire une copie
de l'onglet vers le classeur où les 65 onglets seront rassembler ... long,
très long.
Bonjour Onglet,
Est-ce que tes feuilles possèdent toutes le même nom ? Ont-ils toutes la même structure des données... si oui quelles sont les
colonnes utilisées ? Désires-tu seulement les données ou les formules des feuilles sources si il y en a dans le fichier final ?
Où sont tes fichiers, Tous dans le même répertoire ?
Salutations!
"ONGLET" a écrit dans le message de news:
Petit problème épineux :
Je dois copier plusieurs onglets (65) et les rassembler sous un seul
classeur xls.
Problème :
Les fameux 65 onglets sont présents dans autant de fichiers xls ...
Existe-il / Est-il possible d'automatiser la copie de ses onglets ? ... car
à l'heure actuelle, je dois ouvrir chaque fichier xls, puis faire une copie
de l'onglet vers le classeur où les 65 onglets seront rassembler ... long,
très long.
Bonjour Onglet,
Est-ce que tes feuilles possèdent toutes le même nom ? Ont-ils toutes la même structure des données... si oui quelles sont les
colonnes utilisées ? Désires-tu seulement les données ou les formules des feuilles sources si il y en a dans le fichier final ?
Où sont tes fichiers, Tous dans le même répertoire ?
Salutations!
"ONGLET" <ONGLET@discussions.microsoft.com> a écrit dans le message de news: AE54E5E2-D38C-4597-BB85-E88610637341@microsoft.com...
Petit problème épineux :
Je dois copier plusieurs onglets (65) et les rassembler sous un seul
classeur xls.
Problème :
Les fameux 65 onglets sont présents dans autant de fichiers xls ...
Existe-il / Est-il possible d'automatiser la copie de ses onglets ? ... car
à l'heure actuelle, je dois ouvrir chaque fichier xls, puis faire une copie
de l'onglet vers le classeur où les 65 onglets seront rassembler ... long,
très long.
Bonjour Onglet,
Est-ce que tes feuilles possèdent toutes le même nom ? Ont-ils toutes la même structure des données... si oui quelles sont les
colonnes utilisées ? Désires-tu seulement les données ou les formules des feuilles sources si il y en a dans le fichier final ?
Où sont tes fichiers, Tous dans le même répertoire ?
Salutations!
"ONGLET" a écrit dans le message de news:
Petit problème épineux :
Je dois copier plusieurs onglets (65) et les rassembler sous un seul
classeur xls.
Problème :
Les fameux 65 onglets sont présents dans autant de fichiers xls ...
Existe-il / Est-il possible d'automatiser la copie de ses onglets ? ... car
à l'heure actuelle, je dois ouvrir chaque fichier xls, puis faire une copie
de l'onglet vers le classeur où les 65 onglets seront rassembler ... long,
très long.
Bonjour Onglet,
Est-ce que tes feuilles possèdent toutes le même nom ? Ont-ils toutes la même structure des données... si oui quelles sont les
colonnes utilisées ? Désires-tu seulement les données ou les formules des feuilles sources si il y en a dans le fichier final ?
Où sont tes fichiers, Tous dans le même répertoire ?
Salutations!
"ONGLET" a écrit dans le message de news:
Petit problème épineux :
Je dois copier plusieurs onglets (65) et les rassembler sous un seul
classeur xls.
Problème :
Les fameux 65 onglets sont présents dans autant de fichiers xls ...
Existe-il / Est-il possible d'automatiser la copie de ses onglets ? ... car
à l'heure actuelle, je dois ouvrir chaque fichier xls, puis faire une copie
de l'onglet vers le classeur où les 65 onglets seront rassembler ... long,
très long.
Bonjour Onglet,
Est-ce que tes feuilles possèdent toutes le même nom ? Ont-ils toutes la même structure des données... si oui quelles sont les
colonnes utilisées ? Désires-tu seulement les données ou les formules des feuilles sources si il y en a dans le fichier final ?
Où sont tes fichiers, Tous dans le même répertoire ?
Salutations!
"ONGLET" <ONGLET@discussions.microsoft.com> a écrit dans le message de news: AE54E5E2-D38C-4597-BB85-E88610637341@microsoft.com...
Petit problème épineux :
Je dois copier plusieurs onglets (65) et les rassembler sous un seul
classeur xls.
Problème :
Les fameux 65 onglets sont présents dans autant de fichiers xls ...
Existe-il / Est-il possible d'automatiser la copie de ses onglets ? ... car
à l'heure actuelle, je dois ouvrir chaque fichier xls, puis faire une copie
de l'onglet vers le classeur où les 65 onglets seront rassembler ... long,
très long.
Bonjour Onglet,
Est-ce que tes feuilles possèdent toutes le même nom ? Ont-ils toutes la même structure des données... si oui quelles sont les
colonnes utilisées ? Désires-tu seulement les données ou les formules des feuilles sources si il y en a dans le fichier final ?
Où sont tes fichiers, Tous dans le même répertoire ?
Salutations!
"ONGLET" a écrit dans le message de news:
Petit problème épineux :
Je dois copier plusieurs onglets (65) et les rassembler sous un seul
classeur xls.
Problème :
Les fameux 65 onglets sont présents dans autant de fichiers xls ...
Existe-il / Est-il possible d'automatiser la copie de ses onglets ? ... car
à l'heure actuelle, je dois ouvrir chaque fichier xls, puis faire une copie
de l'onglet vers le classeur où les 65 onglets seront rassembler ... long,
très long.
Bonjour Vader,
Voici une procédure qui fera le travail.
Tu copies ce qui suit dans un module standard
Dans cette procédure,
Function TrouverLaFeuille(Wks As Workbook)
Il y a cette ligne de code qui doit trouver le " n° de réf interne"
If Sh.CodeName = "Feuil1"
Tu dois adapter !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
Il est préférable d'être clair lorsque l'on pose une question dans son énoncé. L.'expression que tu utilises : "un n° de réf
interne" , Tu dois être le seul à savoir ce que c'est. Dis comme les gens à qui tu demandes de l'aide peuvent savoir ce que cela
veut dire ?
Renseigne adéquatement le répertoire dans lequel se retrouve tous tes fichiers.
'--------------------------------------
Sub Compilation()
Dim NomFichier As String
Dim Repertoire As String
Dim Wk As Workbook, Depart As String
Repertoire = "c:Atravail" 'à déterminer
NomFichier = Dir(Repertoire & "*.xls")
Application.ScreenUpdating = False
Depart = ThisWorkbook.Name
Set Wk = Workbooks.Add
Do
OuvrirFichier NomFichier, Wk
'NomFichier = Dir()
NomFichier = ""
Loop While NomFichier <> ""
Application.DisplayAlerts = False
Worksheets(Array("Feuil1", "Feuil2", "Feuil3")).Delete
Application.DisplayAlerts = True
Workbooks(Depart).Activate
End Sub
'--------------------------------------
Sub OuvrirFichier(NomComplet As String, Wk As Workbook)
Dim Dest As Workbook, Feuille As String
Set Dest = Workbooks.Open(NomComplet)
Feuille = TrouverLaFeuille(Dest)
If Feuille <> "" Then
Dest.Worksheets(Feuille).Copy _
after:=Wk.Sheets(Wk.Sheets.Count)
Dest.Close False
Else
MsgBox "Impossible de trouver ladite feuille" & _
vbCrLf & "Pour ce classeur : " & Dest.Name & ".", _
vbInformation + vbOKOnly, "Attention"
End If
End Sub
'--------------------------------------
Function TrouverLaFeuille(Wks As Workbook)
Dim Sh As Worksheet
For Each Sh In Wks.Worksheets
If Sh.CodeName = "Feuil1" Then 'à déterminer
TrouverLaFeuille = Sh.Name
Exit Function
End If
Next
End Function
'--------------------------------------
Salutations!
"Vader" a écrit dans le message de news:
Bonjour,
les feuilles ont des noms différents mais avec un n° de réf interne.
La structure est toujours la même.
Le truc s'est d'obtenir un cumul des fichiers de départ dans un sens et
unique fichier (1 onglet par fichier de départ - 65 fichiers -> 65 onglets).
Les onglets doivent être copiés tels quel pour les traitements futurs.
Merci,
Vad'Bonjour Onglet,
Est-ce que tes feuilles possèdent toutes le même nom ? Ont-ils toutes la même structure des données... si oui quelles sont les
colonnes utilisées ? Désires-tu seulement les données ou les formules des feuilles sources si il y en a dans le fichier final ?
Où sont tes fichiers, Tous dans le même répertoire ?
Salutations!
"ONGLET" a écrit dans le message de news:
Petit problème épineux :
Je dois copier plusieurs onglets (65) et les rassembler sous un seul
classeur xls.
Problème :
Les fameux 65 onglets sont présents dans autant de fichiers xls ...
Existe-il / Est-il possible d'automatiser la copie de ses onglets ? ... car
à l'heure actuelle, je dois ouvrir chaque fichier xls, puis faire une copie
de l'onglet vers le classeur où les 65 onglets seront rassembler ... long,
très long.
Bonjour Vader,
Voici une procédure qui fera le travail.
Tu copies ce qui suit dans un module standard
Dans cette procédure,
Function TrouverLaFeuille(Wks As Workbook)
Il y a cette ligne de code qui doit trouver le " n° de réf interne"
If Sh.CodeName = "Feuil1"
Tu dois adapter !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
Il est préférable d'être clair lorsque l'on pose une question dans son énoncé. L.'expression que tu utilises : "un n° de réf
interne" , Tu dois être le seul à savoir ce que c'est. Dis comme les gens à qui tu demandes de l'aide peuvent savoir ce que cela
veut dire ?
Renseigne adéquatement le répertoire dans lequel se retrouve tous tes fichiers.
'--------------------------------------
Sub Compilation()
Dim NomFichier As String
Dim Repertoire As String
Dim Wk As Workbook, Depart As String
Repertoire = "c:Atravail" 'à déterminer
NomFichier = Dir(Repertoire & "*.xls")
Application.ScreenUpdating = False
Depart = ThisWorkbook.Name
Set Wk = Workbooks.Add
Do
OuvrirFichier NomFichier, Wk
'NomFichier = Dir()
NomFichier = ""
Loop While NomFichier <> ""
Application.DisplayAlerts = False
Worksheets(Array("Feuil1", "Feuil2", "Feuil3")).Delete
Application.DisplayAlerts = True
Workbooks(Depart).Activate
End Sub
'--------------------------------------
Sub OuvrirFichier(NomComplet As String, Wk As Workbook)
Dim Dest As Workbook, Feuille As String
Set Dest = Workbooks.Open(NomComplet)
Feuille = TrouverLaFeuille(Dest)
If Feuille <> "" Then
Dest.Worksheets(Feuille).Copy _
after:=Wk.Sheets(Wk.Sheets.Count)
Dest.Close False
Else
MsgBox "Impossible de trouver ladite feuille" & _
vbCrLf & "Pour ce classeur : " & Dest.Name & ".", _
vbInformation + vbOKOnly, "Attention"
End If
End Sub
'--------------------------------------
Function TrouverLaFeuille(Wks As Workbook)
Dim Sh As Worksheet
For Each Sh In Wks.Worksheets
If Sh.CodeName = "Feuil1" Then 'à déterminer
TrouverLaFeuille = Sh.Name
Exit Function
End If
Next
End Function
'--------------------------------------
Salutations!
"Vader" <Vader@discussions.microsoft.com> a écrit dans le message de news: 3AF6ACC2-79A0-4BCF-A2A7-7E1934ECD7C0@microsoft.com...
Bonjour,
les feuilles ont des noms différents mais avec un n° de réf interne.
La structure est toujours la même.
Le truc s'est d'obtenir un cumul des fichiers de départ dans un sens et
unique fichier (1 onglet par fichier de départ - 65 fichiers -> 65 onglets).
Les onglets doivent être copiés tels quel pour les traitements futurs.
Merci,
Vad'
Bonjour Onglet,
Est-ce que tes feuilles possèdent toutes le même nom ? Ont-ils toutes la même structure des données... si oui quelles sont les
colonnes utilisées ? Désires-tu seulement les données ou les formules des feuilles sources si il y en a dans le fichier final ?
Où sont tes fichiers, Tous dans le même répertoire ?
Salutations!
"ONGLET" <ONGLET@discussions.microsoft.com> a écrit dans le message de news: AE54E5E2-D38C-4597-BB85-E88610637341@microsoft.com...
Petit problème épineux :
Je dois copier plusieurs onglets (65) et les rassembler sous un seul
classeur xls.
Problème :
Les fameux 65 onglets sont présents dans autant de fichiers xls ...
Existe-il / Est-il possible d'automatiser la copie de ses onglets ? ... car
à l'heure actuelle, je dois ouvrir chaque fichier xls, puis faire une copie
de l'onglet vers le classeur où les 65 onglets seront rassembler ... long,
très long.
Bonjour Vader,
Voici une procédure qui fera le travail.
Tu copies ce qui suit dans un module standard
Dans cette procédure,
Function TrouverLaFeuille(Wks As Workbook)
Il y a cette ligne de code qui doit trouver le " n° de réf interne"
If Sh.CodeName = "Feuil1"
Tu dois adapter !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
Il est préférable d'être clair lorsque l'on pose une question dans son énoncé. L.'expression que tu utilises : "un n° de réf
interne" , Tu dois être le seul à savoir ce que c'est. Dis comme les gens à qui tu demandes de l'aide peuvent savoir ce que cela
veut dire ?
Renseigne adéquatement le répertoire dans lequel se retrouve tous tes fichiers.
'--------------------------------------
Sub Compilation()
Dim NomFichier As String
Dim Repertoire As String
Dim Wk As Workbook, Depart As String
Repertoire = "c:Atravail" 'à déterminer
NomFichier = Dir(Repertoire & "*.xls")
Application.ScreenUpdating = False
Depart = ThisWorkbook.Name
Set Wk = Workbooks.Add
Do
OuvrirFichier NomFichier, Wk
'NomFichier = Dir()
NomFichier = ""
Loop While NomFichier <> ""
Application.DisplayAlerts = False
Worksheets(Array("Feuil1", "Feuil2", "Feuil3")).Delete
Application.DisplayAlerts = True
Workbooks(Depart).Activate
End Sub
'--------------------------------------
Sub OuvrirFichier(NomComplet As String, Wk As Workbook)
Dim Dest As Workbook, Feuille As String
Set Dest = Workbooks.Open(NomComplet)
Feuille = TrouverLaFeuille(Dest)
If Feuille <> "" Then
Dest.Worksheets(Feuille).Copy _
after:=Wk.Sheets(Wk.Sheets.Count)
Dest.Close False
Else
MsgBox "Impossible de trouver ladite feuille" & _
vbCrLf & "Pour ce classeur : " & Dest.Name & ".", _
vbInformation + vbOKOnly, "Attention"
End If
End Sub
'--------------------------------------
Function TrouverLaFeuille(Wks As Workbook)
Dim Sh As Worksheet
For Each Sh In Wks.Worksheets
If Sh.CodeName = "Feuil1" Then 'à déterminer
TrouverLaFeuille = Sh.Name
Exit Function
End If
Next
End Function
'--------------------------------------
Salutations!
"Vader" a écrit dans le message de news:
Bonjour,
les feuilles ont des noms différents mais avec un n° de réf interne.
La structure est toujours la même.
Le truc s'est d'obtenir un cumul des fichiers de départ dans un sens et
unique fichier (1 onglet par fichier de départ - 65 fichiers -> 65 onglets).
Les onglets doivent être copiés tels quel pour les traitements futurs.
Merci,
Vad'Bonjour Onglet,
Est-ce que tes feuilles possèdent toutes le même nom ? Ont-ils toutes la même structure des données... si oui quelles sont les
colonnes utilisées ? Désires-tu seulement les données ou les formules des feuilles sources si il y en a dans le fichier final ?
Où sont tes fichiers, Tous dans le même répertoire ?
Salutations!
"ONGLET" a écrit dans le message de news:
Petit problème épineux :
Je dois copier plusieurs onglets (65) et les rassembler sous un seul
classeur xls.
Problème :
Les fameux 65 onglets sont présents dans autant de fichiers xls ...
Existe-il / Est-il possible d'automatiser la copie de ses onglets ? ... car
à l'heure actuelle, je dois ouvrir chaque fichier xls, puis faire une copie
de l'onglet vers le classeur où les 65 onglets seront rassembler ... long,
très long.
Bonjour Vader,
Voici une procédure qui fera le travail.
Tu copies ce qui suit dans un module standard
Dans cette procédure,
Function TrouverLaFeuille(Wks As Workbook)
Il y a cette ligne de code qui doit trouver le " n° de réf interne"
If Sh.CodeName = "Feuil1"
Tu dois adapter !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
Il est préférable d'être clair lorsque l'on pose une question dans son énoncé. L.'expression que tu utilises : "un n° de réf
interne" , Tu dois être le seul à savoir ce que c'est. Dis comme les gens à qui tu demandes de l'aide peuvent savoir ce que cela
veut dire ?
Renseigne adéquatement le répertoire dans lequel se retrouve tous tes fichiers.
'--------------------------------------
Sub Compilation()
Dim NomFichier As String
Dim Repertoire As String
Dim Wk As Workbook, Depart As String
Repertoire = "c:Atravail" 'à déterminer
NomFichier = Dir(Repertoire & "*.xls")
Application.ScreenUpdating = False
Depart = ThisWorkbook.Name
Set Wk = Workbooks.Add
Do
OuvrirFichier NomFichier, Wk
'NomFichier = Dir()
NomFichier = ""
Loop While NomFichier <> ""
Application.DisplayAlerts = False
Worksheets(Array("Feuil1", "Feuil2", "Feuil3")).Delete
Application.DisplayAlerts = True
Workbooks(Depart).Activate
End Sub
'--------------------------------------
Sub OuvrirFichier(NomComplet As String, Wk As Workbook)
Dim Dest As Workbook, Feuille As String
Set Dest = Workbooks.Open(NomComplet)
Feuille = TrouverLaFeuille(Dest)
If Feuille <> "" Then
Dest.Worksheets(Feuille).Copy _
after:=Wk.Sheets(Wk.Sheets.Count)
Dest.Close False
Else
MsgBox "Impossible de trouver ladite feuille" & _
vbCrLf & "Pour ce classeur : " & Dest.Name & ".", _
vbInformation + vbOKOnly, "Attention"
End If
End Sub
'--------------------------------------
Function TrouverLaFeuille(Wks As Workbook)
Dim Sh As Worksheet
For Each Sh In Wks.Worksheets
If Sh.CodeName = "Feuil1" Then 'à déterminer
TrouverLaFeuille = Sh.Name
Exit Function
End If
Next
End Function
'--------------------------------------
Salutations!
"Vader" a écrit dans le message de news:
Bonjour,
les feuilles ont des noms différents mais avec un n° de réf interne.
La structure est toujours la même.
Le truc s'est d'obtenir un cumul des fichiers de départ dans un sens et
unique fichier (1 onglet par fichier de départ - 65 fichiers -> 65 onglets).
Les onglets doivent être copiés tels quel pour les traitements futurs.
Merci,
Vad'Bonjour Onglet,
Est-ce que tes feuilles possèdent toutes le même nom ? Ont-ils toutes la même structure des données... si oui quelles sont les
colonnes utilisées ? Désires-tu seulement les données ou les formules des feuilles sources si il y en a dans le fichier final ?
Où sont tes fichiers, Tous dans le même répertoire ?
Salutations!
"ONGLET" a écrit dans le message de news:
Petit problème épineux :
Je dois copier plusieurs onglets (65) et les rassembler sous un seul
classeur xls.
Problème :
Les fameux 65 onglets sont présents dans autant de fichiers xls ...
Existe-il / Est-il possible d'automatiser la copie de ses onglets ? ... car
à l'heure actuelle, je dois ouvrir chaque fichier xls, puis faire une copie
de l'onglet vers le classeur où les 65 onglets seront rassembler ... long,
très long.
Bonjour Vader,
Voici une procédure qui fera le travail.
Tu copies ce qui suit dans un module standard
Dans cette procédure,
Function TrouverLaFeuille(Wks As Workbook)
Il y a cette ligne de code qui doit trouver le " n° de réf interne"
If Sh.CodeName = "Feuil1"
Tu dois adapter !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
Il est préférable d'être clair lorsque l'on pose une question dans son énoncé. L.'expression que tu utilises : "un n° de réf
interne" , Tu dois être le seul à savoir ce que c'est. Dis comme les gens à qui tu demandes de l'aide peuvent savoir ce que cela
veut dire ?
Renseigne adéquatement le répertoire dans lequel se retrouve tous tes fichiers.
'--------------------------------------
Sub Compilation()
Dim NomFichier As String
Dim Repertoire As String
Dim Wk As Workbook, Depart As String
Repertoire = "c:Atravail" 'à déterminer
NomFichier = Dir(Repertoire & "*.xls")
Application.ScreenUpdating = False
Depart = ThisWorkbook.Name
Set Wk = Workbooks.Add
Do
OuvrirFichier NomFichier, Wk
'NomFichier = Dir()
NomFichier = ""
Loop While NomFichier <> ""
Application.DisplayAlerts = False
Worksheets(Array("Feuil1", "Feuil2", "Feuil3")).Delete
Application.DisplayAlerts = True
Workbooks(Depart).Activate
End Sub
'--------------------------------------
Sub OuvrirFichier(NomComplet As String, Wk As Workbook)
Dim Dest As Workbook, Feuille As String
Set Dest = Workbooks.Open(NomComplet)
Feuille = TrouverLaFeuille(Dest)
If Feuille <> "" Then
Dest.Worksheets(Feuille).Copy _
after:=Wk.Sheets(Wk.Sheets.Count)
Dest.Close False
Else
MsgBox "Impossible de trouver ladite feuille" & _
vbCrLf & "Pour ce classeur : " & Dest.Name & ".", _
vbInformation + vbOKOnly, "Attention"
End If
End Sub
'--------------------------------------
Function TrouverLaFeuille(Wks As Workbook)
Dim Sh As Worksheet
For Each Sh In Wks.Worksheets
If Sh.CodeName = "Feuil1" Then 'à déterminer
TrouverLaFeuille = Sh.Name
Exit Function
End If
Next
End Function
'--------------------------------------
Salutations!
"Vader" <Vader@discussions.microsoft.com> a écrit dans le message de news: 3AF6ACC2-79A0-4BCF-A2A7-7E1934ECD7C0@microsoft.com...
Bonjour,
les feuilles ont des noms différents mais avec un n° de réf interne.
La structure est toujours la même.
Le truc s'est d'obtenir un cumul des fichiers de départ dans un sens et
unique fichier (1 onglet par fichier de départ - 65 fichiers -> 65 onglets).
Les onglets doivent être copiés tels quel pour les traitements futurs.
Merci,
Vad'
Bonjour Onglet,
Est-ce que tes feuilles possèdent toutes le même nom ? Ont-ils toutes la même structure des données... si oui quelles sont les
colonnes utilisées ? Désires-tu seulement les données ou les formules des feuilles sources si il y en a dans le fichier final ?
Où sont tes fichiers, Tous dans le même répertoire ?
Salutations!
"ONGLET" <ONGLET@discussions.microsoft.com> a écrit dans le message de news: AE54E5E2-D38C-4597-BB85-E88610637341@microsoft.com...
Petit problème épineux :
Je dois copier plusieurs onglets (65) et les rassembler sous un seul
classeur xls.
Problème :
Les fameux 65 onglets sont présents dans autant de fichiers xls ...
Existe-il / Est-il possible d'automatiser la copie de ses onglets ? ... car
à l'heure actuelle, je dois ouvrir chaque fichier xls, puis faire une copie
de l'onglet vers le classeur où les 65 onglets seront rassembler ... long,
très long.
Bonjour Vader,
Voici une procédure qui fera le travail.
Tu copies ce qui suit dans un module standard
Dans cette procédure,
Function TrouverLaFeuille(Wks As Workbook)
Il y a cette ligne de code qui doit trouver le " n° de réf interne"
If Sh.CodeName = "Feuil1"
Tu dois adapter !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
Il est préférable d'être clair lorsque l'on pose une question dans son énoncé. L.'expression que tu utilises : "un n° de réf
interne" , Tu dois être le seul à savoir ce que c'est. Dis comme les gens à qui tu demandes de l'aide peuvent savoir ce que cela
veut dire ?
Renseigne adéquatement le répertoire dans lequel se retrouve tous tes fichiers.
'--------------------------------------
Sub Compilation()
Dim NomFichier As String
Dim Repertoire As String
Dim Wk As Workbook, Depart As String
Repertoire = "c:Atravail" 'à déterminer
NomFichier = Dir(Repertoire & "*.xls")
Application.ScreenUpdating = False
Depart = ThisWorkbook.Name
Set Wk = Workbooks.Add
Do
OuvrirFichier NomFichier, Wk
'NomFichier = Dir()
NomFichier = ""
Loop While NomFichier <> ""
Application.DisplayAlerts = False
Worksheets(Array("Feuil1", "Feuil2", "Feuil3")).Delete
Application.DisplayAlerts = True
Workbooks(Depart).Activate
End Sub
'--------------------------------------
Sub OuvrirFichier(NomComplet As String, Wk As Workbook)
Dim Dest As Workbook, Feuille As String
Set Dest = Workbooks.Open(NomComplet)
Feuille = TrouverLaFeuille(Dest)
If Feuille <> "" Then
Dest.Worksheets(Feuille).Copy _
after:=Wk.Sheets(Wk.Sheets.Count)
Dest.Close False
Else
MsgBox "Impossible de trouver ladite feuille" & _
vbCrLf & "Pour ce classeur : " & Dest.Name & ".", _
vbInformation + vbOKOnly, "Attention"
End If
End Sub
'--------------------------------------
Function TrouverLaFeuille(Wks As Workbook)
Dim Sh As Worksheet
For Each Sh In Wks.Worksheets
If Sh.CodeName = "Feuil1" Then 'à déterminer
TrouverLaFeuille = Sh.Name
Exit Function
End If
Next
End Function
'--------------------------------------
Salutations!
"Vader" a écrit dans le message de news:
Bonjour,
les feuilles ont des noms différents mais avec un n° de réf interne.
La structure est toujours la même.
Le truc s'est d'obtenir un cumul des fichiers de départ dans un sens et
unique fichier (1 onglet par fichier de départ - 65 fichiers -> 65 onglets).
Les onglets doivent être copiés tels quel pour les traitements futurs.
Merci,
Vad'Bonjour Onglet,
Est-ce que tes feuilles possèdent toutes le même nom ? Ont-ils toutes la même structure des données... si oui quelles sont les
colonnes utilisées ? Désires-tu seulement les données ou les formules des feuilles sources si il y en a dans le fichier final ?
Où sont tes fichiers, Tous dans le même répertoire ?
Salutations!
"ONGLET" a écrit dans le message de news:
Petit problème épineux :
Je dois copier plusieurs onglets (65) et les rassembler sous un seul
classeur xls.
Problème :
Les fameux 65 onglets sont présents dans autant de fichiers xls ...
Existe-il / Est-il possible d'automatiser la copie de ses onglets ? ... car
à l'heure actuelle, je dois ouvrir chaque fichier xls, puis faire une copie
de l'onglet vers le classeur où les 65 onglets seront rassembler ... long,
très long.
Bonjour Vader,
Voici une procédure qui fera le travail.
Tu copies ce qui suit dans un module standard
Dans cette procédure,
Function TrouverLaFeuille(Wks As Workbook)
Il y a cette ligne de code qui doit trouver le " n° de réf interne"
If Sh.CodeName = "Feuil1"
Tu dois adapter !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
Il est préférable d'être clair lorsque l'on pose une question dans son énoncé. L.'expression que tu utilises : "un n° de réf
interne" , Tu dois être le seul à savoir ce que c'est. Dis comme les gens à qui tu demandes de l'aide peuvent savoir ce que cela
veut dire ?
Renseigne adéquatement le répertoire dans lequel se retrouve tous tes fichiers.
'--------------------------------------
Sub Compilation()
Dim NomFichier As String
Dim Repertoire As String
Dim Wk As Workbook, Depart As String
Repertoire = "c:Atravail" 'à déterminer
NomFichier = Dir(Repertoire & "*.xls")
Application.ScreenUpdating = False
Depart = ThisWorkbook.Name
Set Wk = Workbooks.Add
Do
OuvrirFichier NomFichier, Wk
'NomFichier = Dir()
NomFichier = ""
Loop While NomFichier <> ""
Application.DisplayAlerts = False
Worksheets(Array("Feuil1", "Feuil2", "Feuil3")).Delete
Application.DisplayAlerts = True
Workbooks(Depart).Activate
End Sub
'--------------------------------------
Sub OuvrirFichier(NomComplet As String, Wk As Workbook)
Dim Dest As Workbook, Feuille As String
Set Dest = Workbooks.Open(NomComplet)
Feuille = TrouverLaFeuille(Dest)
If Feuille <> "" Then
Dest.Worksheets(Feuille).Copy _
after:=Wk.Sheets(Wk.Sheets.Count)
Dest.Close False
Else
MsgBox "Impossible de trouver ladite feuille" & _
vbCrLf & "Pour ce classeur : " & Dest.Name & ".", _
vbInformation + vbOKOnly, "Attention"
End If
End Sub
'--------------------------------------
Function TrouverLaFeuille(Wks As Workbook)
Dim Sh As Worksheet
For Each Sh In Wks.Worksheets
If Sh.CodeName = "Feuil1" Then 'à déterminer
TrouverLaFeuille = Sh.Name
Exit Function
End If
Next
End Function
'--------------------------------------
Salutations!
"Vader" a écrit dans le message de news:
Bonjour,
les feuilles ont des noms différents mais avec un n° de réf interne.
La structure est toujours la même.
Le truc s'est d'obtenir un cumul des fichiers de départ dans un sens et
unique fichier (1 onglet par fichier de départ - 65 fichiers -> 65 onglets).
Les onglets doivent être copiés tels quel pour les traitements futurs.
Merci,
Vad'Bonjour Onglet,
Est-ce que tes feuilles possèdent toutes le même nom ? Ont-ils toutes la même structure des données... si oui quelles sont les
colonnes utilisées ? Désires-tu seulement les données ou les formules des feuilles sources si il y en a dans le fichier final ?
Où sont tes fichiers, Tous dans le même répertoire ?
Salutations!
"ONGLET" a écrit dans le message de news:
Petit problème épineux :
Je dois copier plusieurs onglets (65) et les rassembler sous un seul
classeur xls.
Problème :
Les fameux 65 onglets sont présents dans autant de fichiers xls ...
Existe-il / Est-il possible d'automatiser la copie de ses onglets ? ... car
à l'heure actuelle, je dois ouvrir chaque fichier xls, puis faire une copie
de l'onglet vers le classeur où les 65 onglets seront rassembler ... long,
très long.
Bonjour Vader,
Voici une procédure qui fera le travail.
Tu copies ce qui suit dans un module standard
Dans cette procédure,
Function TrouverLaFeuille(Wks As Workbook)
Il y a cette ligne de code qui doit trouver le " n° de réf interne"
If Sh.CodeName = "Feuil1"
Tu dois adapter !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
Il est préférable d'être clair lorsque l'on pose une question dans son énoncé. L.'expression que tu utilises : "un n° de réf
interne" , Tu dois être le seul à savoir ce que c'est. Dis comme les gens à qui tu demandes de l'aide peuvent savoir ce que cela
veut dire ?
Renseigne adéquatement le répertoire dans lequel se retrouve tous tes fichiers.
'--------------------------------------
Sub Compilation()
Dim NomFichier As String
Dim Repertoire As String
Dim Wk As Workbook, Depart As String
Repertoire = "c:Atravail" 'à déterminer
NomFichier = Dir(Repertoire & "*.xls")
Application.ScreenUpdating = False
Depart = ThisWorkbook.Name
Set Wk = Workbooks.Add
Do
OuvrirFichier NomFichier, Wk
'NomFichier = Dir()
NomFichier = ""
Loop While NomFichier <> ""
Application.DisplayAlerts = False
Worksheets(Array("Feuil1", "Feuil2", "Feuil3")).Delete
Application.DisplayAlerts = True
Workbooks(Depart).Activate
End Sub
'--------------------------------------
Sub OuvrirFichier(NomComplet As String, Wk As Workbook)
Dim Dest As Workbook, Feuille As String
Set Dest = Workbooks.Open(NomComplet)
Feuille = TrouverLaFeuille(Dest)
If Feuille <> "" Then
Dest.Worksheets(Feuille).Copy _
after:=Wk.Sheets(Wk.Sheets.Count)
Dest.Close False
Else
MsgBox "Impossible de trouver ladite feuille" & _
vbCrLf & "Pour ce classeur : " & Dest.Name & ".", _
vbInformation + vbOKOnly, "Attention"
End If
End Sub
'--------------------------------------
Function TrouverLaFeuille(Wks As Workbook)
Dim Sh As Worksheet
For Each Sh In Wks.Worksheets
If Sh.CodeName = "Feuil1" Then 'à déterminer
TrouverLaFeuille = Sh.Name
Exit Function
End If
Next
End Function
'--------------------------------------
Salutations!
"Vader" <Vader@discussions.microsoft.com> a écrit dans le message de news: 3AF6ACC2-79A0-4BCF-A2A7-7E1934ECD7C0@microsoft.com...
Bonjour,
les feuilles ont des noms différents mais avec un n° de réf interne.
La structure est toujours la même.
Le truc s'est d'obtenir un cumul des fichiers de départ dans un sens et
unique fichier (1 onglet par fichier de départ - 65 fichiers -> 65 onglets).
Les onglets doivent être copiés tels quel pour les traitements futurs.
Merci,
Vad'
Bonjour Onglet,
Est-ce que tes feuilles possèdent toutes le même nom ? Ont-ils toutes la même structure des données... si oui quelles sont les
colonnes utilisées ? Désires-tu seulement les données ou les formules des feuilles sources si il y en a dans le fichier final ?
Où sont tes fichiers, Tous dans le même répertoire ?
Salutations!
"ONGLET" <ONGLET@discussions.microsoft.com> a écrit dans le message de news:
AE54E5E2-D38C-4597-BB85-E88610637341@microsoft.com...
Petit problème épineux :
Je dois copier plusieurs onglets (65) et les rassembler sous un seul
classeur xls.
Problème :
Les fameux 65 onglets sont présents dans autant de fichiers xls ...
Existe-il / Est-il possible d'automatiser la copie de ses onglets ? ... car
à l'heure actuelle, je dois ouvrir chaque fichier xls, puis faire une copie
de l'onglet vers le classeur où les 65 onglets seront rassembler ... long,
très long.
Bonjour Vader,
Voici une procédure qui fera le travail.
Tu copies ce qui suit dans un module standard
Dans cette procédure,
Function TrouverLaFeuille(Wks As Workbook)
Il y a cette ligne de code qui doit trouver le " n° de réf interne"
If Sh.CodeName = "Feuil1"
Tu dois adapter !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
Il est préférable d'être clair lorsque l'on pose une question dans son énoncé. L.'expression que tu utilises : "un n° de réf
interne" , Tu dois être le seul à savoir ce que c'est. Dis comme les gens à qui tu demandes de l'aide peuvent savoir ce que cela
veut dire ?
Renseigne adéquatement le répertoire dans lequel se retrouve tous tes fichiers.
'--------------------------------------
Sub Compilation()
Dim NomFichier As String
Dim Repertoire As String
Dim Wk As Workbook, Depart As String
Repertoire = "c:Atravail" 'à déterminer
NomFichier = Dir(Repertoire & "*.xls")
Application.ScreenUpdating = False
Depart = ThisWorkbook.Name
Set Wk = Workbooks.Add
Do
OuvrirFichier NomFichier, Wk
'NomFichier = Dir()
NomFichier = ""
Loop While NomFichier <> ""
Application.DisplayAlerts = False
Worksheets(Array("Feuil1", "Feuil2", "Feuil3")).Delete
Application.DisplayAlerts = True
Workbooks(Depart).Activate
End Sub
'--------------------------------------
Sub OuvrirFichier(NomComplet As String, Wk As Workbook)
Dim Dest As Workbook, Feuille As String
Set Dest = Workbooks.Open(NomComplet)
Feuille = TrouverLaFeuille(Dest)
If Feuille <> "" Then
Dest.Worksheets(Feuille).Copy _
after:=Wk.Sheets(Wk.Sheets.Count)
Dest.Close False
Else
MsgBox "Impossible de trouver ladite feuille" & _
vbCrLf & "Pour ce classeur : " & Dest.Name & ".", _
vbInformation + vbOKOnly, "Attention"
End If
End Sub
'--------------------------------------
Function TrouverLaFeuille(Wks As Workbook)
Dim Sh As Worksheet
For Each Sh In Wks.Worksheets
If Sh.CodeName = "Feuil1" Then 'à déterminer
TrouverLaFeuille = Sh.Name
Exit Function
End If
Next
End Function
'--------------------------------------
Salutations!
"Vader" a écrit dans le message de news:
Bonjour,
les feuilles ont des noms différents mais avec un n° de réf interne.
La structure est toujours la même.
Le truc s'est d'obtenir un cumul des fichiers de départ dans un sens et
unique fichier (1 onglet par fichier de départ - 65 fichiers -> 65 onglets).
Les onglets doivent être copiés tels quel pour les traitements futurs.
Merci,
Vad'Bonjour Onglet,
Est-ce que tes feuilles possèdent toutes le même nom ? Ont-ils toutes la même structure des données... si oui quelles sont les
colonnes utilisées ? Désires-tu seulement les données ou les formules des feuilles sources si il y en a dans le fichier final ?
Où sont tes fichiers, Tous dans le même répertoire ?
Salutations!
"ONGLET" a écrit dans le message de news:
Petit problème épineux :
Je dois copier plusieurs onglets (65) et les rassembler sous un seul
classeur xls.
Problème :
Les fameux 65 onglets sont présents dans autant de fichiers xls ...
Existe-il / Est-il possible d'automatiser la copie de ses onglets ? ... car
à l'heure actuelle, je dois ouvrir chaque fichier xls, puis faire une copie
de l'onglet vers le classeur où les 65 onglets seront rassembler ... long,
très long.