Recupérer les donnees de chaque feuille d'un classeur vers un nouveau classeur
7 réponses
J
Bonjour à tous (XL2000)
Cette macro fonctionne bien, mais oblige à préciser le nom du classeur
d'origine, et chaque feuille l'une après l'autre à la main.
Puis de nommer chaque feuille de destination.
C'est bine lourd.
Comment automatiser cela, svp.
Sub RecupDonnees()
Dim Rg As Range, Rg1 As Range
Set Rg = Workbooks("Suivi.xls").Worksheets("Juin").Range("A1:J44")
Set Rg1 = Workbooks("Classeur1.xls").Worksheets("Feuil1").Range("a1")
Application.EnableEvents = False
Rg.Copy Rg1
Application.EnableEvents = True
End Sub
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
JB
Bonjour,
Set rg=Workbooks(ActiveWorkbook.Name).Worksheets("Juin").Range("A1:J44")
Si Juin représente le mois en cours:
Set rg=Workbooks(ActiveWorkbook.Name).Worksheets(Format(Date, "mmmm")).Range("A1:J44")
Cordialement JB
Bonjour à tous (XL2000) Cette macro fonctionne bien, mais oblige à préciser le nom du classeur d'origine, et chaque feuille l'une après l'autre à la main. Puis de nommer chaque feuille de destination. C'est bine lourd. Comment automatiser cela, svp.
Sub RecupDonnees() Dim Rg As Range, Rg1 As Range Set Rg = Workbooks("Suivi.xls").Worksheets("Juin").Range("A1:J44") Set Rg1 = Workbooks("Classeur1.xls").Worksheets("Feuil1").Range("a1") Application.EnableEvents = False Rg.Copy Rg1 Application.EnableEvents = True End Sub
Merci @+ J@@
Bonjour,
Set
rg=Workbooks(ActiveWorkbook.Name).Worksheets("Juin").Range("A1:J44")
Si Juin représente le mois en cours:
Set rg=Workbooks(ActiveWorkbook.Name).Worksheets(Format(Date,
"mmmm")).Range("A1:J44")
Cordialement JB
Bonjour à tous (XL2000)
Cette macro fonctionne bien, mais oblige à préciser le nom du classeur
d'origine, et chaque feuille l'une après l'autre à la main.
Puis de nommer chaque feuille de destination.
C'est bine lourd.
Comment automatiser cela, svp.
Sub RecupDonnees()
Dim Rg As Range, Rg1 As Range
Set Rg = Workbooks("Suivi.xls").Worksheets("Juin").Range("A1:J44")
Set Rg1 = Workbooks("Classeur1.xls").Worksheets("Feuil1").Range("a1")
Application.EnableEvents = False
Rg.Copy Rg1
Application.EnableEvents = True
End Sub
Set rg=Workbooks(ActiveWorkbook.Name).Worksheets("Juin").Range("A1:J44")
Si Juin représente le mois en cours:
Set rg=Workbooks(ActiveWorkbook.Name).Worksheets(Format(Date, "mmmm")).Range("A1:J44")
Cordialement JB
Bonjour à tous (XL2000) Cette macro fonctionne bien, mais oblige à préciser le nom du classeur d'origine, et chaque feuille l'une après l'autre à la main. Puis de nommer chaque feuille de destination. C'est bine lourd. Comment automatiser cela, svp.
Sub RecupDonnees() Dim Rg As Range, Rg1 As Range Set Rg = Workbooks("Suivi.xls").Worksheets("Juin").Range("A1:J44") Set Rg1 = Workbooks("Classeur1.xls").Worksheets("Feuil1").Range("a1") Application.EnableEvents = False Rg.Copy Rg1 Application.EnableEvents = True End Sub
Merci @+ J@@
JLuc
*Bonjour J@@*, Pour la feuille, peut etre : Set Rg = Workbooks("Suivi.xls").Worksheets(Format(Month(Now)-1, _ "mmmm")).Range("A1:J44")
Set Rg = Workbooks("Suivi.xls").Worksheets("Juin").Range("A1:J44")
-- ____ ( O | O ) -- _oooO_ JLuc _Oooo_
O-O
*Bonjour J@@*,
Pour la feuille, peut etre :
Set Rg = Workbooks("Suivi.xls").Worksheets(Format(Month(Now)-1, _
"mmmm")).Range("A1:J44")
Set Rg = Workbooks("Suivi.xls").Worksheets("Juin").Range("A1:J44")
*Bonjour J@@*, Pour la feuille, peut etre : Set Rg = Workbooks("Suivi.xls").Worksheets(Format(Month(Now)-1, _ "mmmm")).Range("A1:J44")
Set Rg = Workbooks("Suivi.xls").Worksheets("Juin").Range("A1:J44")
-- ____ ( O | O ) -- _oooO_ JLuc _Oooo_
O-O
J
Bonjour merci pour la réponse JB
Set Rg = Workbooks(ActiveWorkbook.Name).Worksheets("Nom_variable").Range("A1:J44") Set Rg1 = Workbooks("Classeur1.xls").Worksheets("Feuil2").Range("a1")
c'est mieux, en effet, mais le nom de la feuille d'origine est variable et pas nécessairement un mois. Comment dire "For each feuille du classeur Origine, copier le range dans le classeur destination" et puis en plus copie aussi le format ;-)
merci pour l'aide cordialement J@@
Set rg=Workbooks(ActiveWorkbook.Name).Worksheets("Juin").Range("A1:J44")
Si Juin représente le mois en cours:
Set rg=Workbooks(ActiveWorkbook.Name).Worksheets(Format(Date, "mmmm")).Range("A1:J44")
Cette macro fonctionne bien, mais oblige à préciser le nom du classeur d'origine, et chaque feuille l'une après l'autre à la main. Puis de nommer chaque feuille de destination. C'est bine lourd. Comment automatiser cela, svp.
Sub RecupDonnees() Dim Rg As Range, Rg1 As Range Set Rg = Workbooks("Suivi.xls").Worksheets("Juin").Range("A1:J44") Set Rg1 = Workbooks("Classeur1.xls").Worksheets("Feuil1").Range("a1") Application.EnableEvents = False Rg.Copy Rg1 Application.EnableEvents = True End Sub
Bonjour
merci pour la réponse JB
Set Rg =
Workbooks(ActiveWorkbook.Name).Worksheets("Nom_variable").Range("A1:J44")
Set Rg1 = Workbooks("Classeur1.xls").Worksheets("Feuil2").Range("a1")
c'est mieux, en effet, mais le nom de la feuille d'origine est variable
et pas nécessairement un mois.
Comment dire "For each feuille du classeur Origine, copier le range dans
le classeur destination" et puis en plus copie aussi le format ;-)
merci pour l'aide
cordialement
J@@
Set
rg=Workbooks(ActiveWorkbook.Name).Worksheets("Juin").Range("A1:J44")
Si Juin représente le mois en cours:
Set rg=Workbooks(ActiveWorkbook.Name).Worksheets(Format(Date,
"mmmm")).Range("A1:J44")
Cette macro fonctionne bien, mais oblige à préciser le nom du classeur
d'origine, et chaque feuille l'une après l'autre à la main.
Puis de nommer chaque feuille de destination.
C'est bine lourd.
Comment automatiser cela, svp.
Sub RecupDonnees()
Dim Rg As Range, Rg1 As Range
Set Rg = Workbooks("Suivi.xls").Worksheets("Juin").Range("A1:J44")
Set Rg1 = Workbooks("Classeur1.xls").Worksheets("Feuil1").Range("a1")
Application.EnableEvents = False
Rg.Copy Rg1
Application.EnableEvents = True
End Sub
Set Rg = Workbooks(ActiveWorkbook.Name).Worksheets("Nom_variable").Range("A1:J44") Set Rg1 = Workbooks("Classeur1.xls").Worksheets("Feuil2").Range("a1")
c'est mieux, en effet, mais le nom de la feuille d'origine est variable et pas nécessairement un mois. Comment dire "For each feuille du classeur Origine, copier le range dans le classeur destination" et puis en plus copie aussi le format ;-)
merci pour l'aide cordialement J@@
Set rg=Workbooks(ActiveWorkbook.Name).Worksheets("Juin").Range("A1:J44")
Si Juin représente le mois en cours:
Set rg=Workbooks(ActiveWorkbook.Name).Worksheets(Format(Date, "mmmm")).Range("A1:J44")
Cette macro fonctionne bien, mais oblige à préciser le nom du classeur d'origine, et chaque feuille l'une après l'autre à la main. Puis de nommer chaque feuille de destination. C'est bine lourd. Comment automatiser cela, svp.
Sub RecupDonnees() Dim Rg As Range, Rg1 As Range Set Rg = Workbooks("Suivi.xls").Worksheets("Juin").Range("A1:J44") Set Rg1 = Workbooks("Classeur1.xls").Worksheets("Feuil1").Range("a1") Application.EnableEvents = False Rg.Copy Rg1 Application.EnableEvents = True End Sub
J
Bonjour JLuc et merci j'ai erreur 9 au test. Kézako? Par ailleurs, le nom de la feuille est variable, pas tjrs une date. merci pour ton aide à+ J@@
*Bonjour J@@*, Pour la feuille, peut etre : Set Rg = Workbooks("Suivi.xls").Worksheets(Format(Month(Now)-1, _ "mmmm")).Range("A1:J44")
Set Rg = Workbooks("Suivi.xls").Worksheets("Juin").Range("A1:J44")
Bonjour JLuc
et merci
j'ai erreur 9 au test. Kézako?
Par ailleurs, le nom de la feuille est variable, pas tjrs une date.
merci pour ton aide
à+
J@@
*Bonjour J@@*,
Pour la feuille, peut etre :
Set Rg = Workbooks("Suivi.xls").Worksheets(Format(Month(Now)-1, _
"mmmm")).Range("A1:J44")
Set Rg = Workbooks("Suivi.xls").Worksheets("Juin").Range("A1:J44")