Bonjour,
Mon classeur comporte 4 feuilles dont une se nomme test.
J'aimerais copier les feuilles qui ne sont pas test dans test.
Les feuilles ayant la même structure, en mettant les enregistrements
les uns à la suite des autres. J'ai essayé avec le code ci-dessous, qui me
renvoie
une erreur que je ne comprends pas:
Sub travail()
Dim feuille As Object, nombre As Long
Dim i As Long
nombre = ActiveWorkbook.Sheets.Count
For i = 1 To nombre
If Sheets(i).Name <> "test" Then
Sheets(i).Range("B1").CurrentRegion.Copy
Sheets("test").Range("A1").End(xlDown).Offset(1, 0).Paste
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
SL
Bonjour regarde l'aide sur paste : ********expression.Paste(Destination, Link)
expression Obligatoire. Expression qui renvoie un objet Worksheet.
Destination Argument de type Variant facultatif. Objet Range qui spécifie l'endroit où le contenu du Presse-papiers doit être placé. Si vous ne spécifiez pas cet argument, la méthode utilise la sélection en cours.
Expression est un objet Workshett (ce qui n'est pas le cas avec ton code)
"François" a écrit dans le message de news:
Bonjour, Mon classeur comporte 4 feuilles dont une se nomme test. J'aimerais copier les feuilles qui ne sont pas test dans test. Les feuilles ayant la même structure, en mettant les enregistrements les uns à la suite des autres. J'ai essayé avec le code ci-dessous, qui me renvoie une erreur que je ne comprends pas:
Sub travail()
Dim feuille As Object, nombre As Long Dim i As Long
nombre = ActiveWorkbook.Sheets.Count
For i = 1 To nombre If Sheets(i).Name <> "test" Then Sheets(i).Range("B1").CurrentRegion.Copy Sheets("test").Range("A1").End(xlDown).Offset(1, 0).Paste
End If Next End Sub
Bonjour
regarde l'aide sur paste :
********expression.Paste(Destination, Link)
expression Obligatoire. Expression qui renvoie un objet Worksheet.
Destination Argument de type Variant facultatif. Objet Range qui
spécifie l'endroit où le contenu du Presse-papiers doit être placé. Si vous
ne spécifiez pas cet argument, la méthode utilise la sélection en cours.
Expression est un objet Workshett (ce qui n'est pas le cas avec ton code)
"François" <Franois@discussions.microsoft.com> a écrit dans le message de
news: D844E1BA-30D8-4425-94D3-E9486D110EDE@microsoft.com...
Bonjour,
Mon classeur comporte 4 feuilles dont une se nomme test.
J'aimerais copier les feuilles qui ne sont pas test dans test.
Les feuilles ayant la même structure, en mettant les enregistrements
les uns à la suite des autres. J'ai essayé avec le code ci-dessous, qui me
renvoie
une erreur que je ne comprends pas:
Sub travail()
Dim feuille As Object, nombre As Long
Dim i As Long
nombre = ActiveWorkbook.Sheets.Count
For i = 1 To nombre
If Sheets(i).Name <> "test" Then
Sheets(i).Range("B1").CurrentRegion.Copy
Sheets("test").Range("A1").End(xlDown).Offset(1, 0).Paste
Bonjour regarde l'aide sur paste : ********expression.Paste(Destination, Link)
expression Obligatoire. Expression qui renvoie un objet Worksheet.
Destination Argument de type Variant facultatif. Objet Range qui spécifie l'endroit où le contenu du Presse-papiers doit être placé. Si vous ne spécifiez pas cet argument, la méthode utilise la sélection en cours.
Expression est un objet Workshett (ce qui n'est pas le cas avec ton code)
"François" a écrit dans le message de news:
Bonjour, Mon classeur comporte 4 feuilles dont une se nomme test. J'aimerais copier les feuilles qui ne sont pas test dans test. Les feuilles ayant la même structure, en mettant les enregistrements les uns à la suite des autres. J'ai essayé avec le code ci-dessous, qui me renvoie une erreur que je ne comprends pas:
Sub travail()
Dim feuille As Object, nombre As Long Dim i As Long
nombre = ActiveWorkbook.Sheets.Count
For i = 1 To nombre If Sheets(i).Name <> "test" Then Sheets(i).Range("B1").CurrentRegion.Copy Sheets("test").Range("A1").End(xlDown).Offset(1, 0).Paste
End If Next End Sub
SL
Re-bonjour j'ai appuyé par mégarde sur CTRL ENTREE, donc dans OE, le post est parti !
je fini : avant le paste : objet Worksheet. 2e problème si la feuille test est vide, Range("A1").End(xlDown).Offset(1, 0) renverra l'avant derniere cellule en ligne 65535 ! Il vaut mieux partir du bas : Range("A65536").End(xlUp)...
Stéphane
"SL" a écrit dans le message de news:
Bonjour regarde l'aide sur paste : ********expression.Paste(Destination, Link)
expression Obligatoire. Expression qui renvoie un objet Worksheet.
Destination Argument de type Variant facultatif. Objet Range qui spécifie l'endroit où le contenu du Presse-papiers doit être placé. Si vous ne spécifiez pas cet argument, la méthode utilise la sélection en cours.
Expression est un objet Workshett (ce qui n'est pas le cas avec ton code)
"François" a écrit dans le message de news:
Bonjour, Mon classeur comporte 4 feuilles dont une se nomme test. J'aimerais copier les feuilles qui ne sont pas test dans test. Les feuilles ayant la même structure, en mettant les enregistrements les uns à la suite des autres. J'ai essayé avec le code ci-dessous, qui me renvoie une erreur que je ne comprends pas:
Sub travail()
Dim feuille As Object, nombre As Long Dim i As Long
nombre = ActiveWorkbook.Sheets.Count
For i = 1 To nombre If Sheets(i).Name <> "test" Then Sheets(i).Range("B1").CurrentRegion.Copy Sheets("test").Range("A1").End(xlDown).Offset(1, 0).Paste
End If Next End Sub
Re-bonjour
j'ai appuyé par mégarde sur CTRL ENTREE, donc dans OE, le post est parti !
je fini :
avant le paste : objet Worksheet.
2e problème
si la feuille test est vide, Range("A1").End(xlDown).Offset(1, 0) renverra
l'avant derniere cellule en ligne 65535 !
Il vaut mieux partir du bas : Range("A65536").End(xlUp)...
Stéphane
"SL" <nospam_sl69@laposte.net> a écrit dans le message de news:
eljeLIs2FHA.1980@TK2MSFTNGP15.phx.gbl...
Bonjour
regarde l'aide sur paste :
********expression.Paste(Destination, Link)
expression Obligatoire. Expression qui renvoie un objet Worksheet.
Destination Argument de type Variant facultatif. Objet Range qui
spécifie l'endroit où le contenu du Presse-papiers doit être placé. Si
vous ne spécifiez pas cet argument, la méthode utilise la sélection en
cours.
Expression est un objet Workshett (ce qui n'est pas le cas avec ton code)
"François" <Franois@discussions.microsoft.com> a écrit dans le message de
news: D844E1BA-30D8-4425-94D3-E9486D110EDE@microsoft.com...
Bonjour,
Mon classeur comporte 4 feuilles dont une se nomme test.
J'aimerais copier les feuilles qui ne sont pas test dans test.
Les feuilles ayant la même structure, en mettant les enregistrements
les uns à la suite des autres. J'ai essayé avec le code ci-dessous, qui
me
renvoie
une erreur que je ne comprends pas:
Sub travail()
Dim feuille As Object, nombre As Long
Dim i As Long
nombre = ActiveWorkbook.Sheets.Count
For i = 1 To nombre
If Sheets(i).Name <> "test" Then
Sheets(i).Range("B1").CurrentRegion.Copy
Sheets("test").Range("A1").End(xlDown).Offset(1, 0).Paste
Re-bonjour j'ai appuyé par mégarde sur CTRL ENTREE, donc dans OE, le post est parti !
je fini : avant le paste : objet Worksheet. 2e problème si la feuille test est vide, Range("A1").End(xlDown).Offset(1, 0) renverra l'avant derniere cellule en ligne 65535 ! Il vaut mieux partir du bas : Range("A65536").End(xlUp)...
Stéphane
"SL" a écrit dans le message de news:
Bonjour regarde l'aide sur paste : ********expression.Paste(Destination, Link)
expression Obligatoire. Expression qui renvoie un objet Worksheet.
Destination Argument de type Variant facultatif. Objet Range qui spécifie l'endroit où le contenu du Presse-papiers doit être placé. Si vous ne spécifiez pas cet argument, la méthode utilise la sélection en cours.
Expression est un objet Workshett (ce qui n'est pas le cas avec ton code)
"François" a écrit dans le message de news:
Bonjour, Mon classeur comporte 4 feuilles dont une se nomme test. J'aimerais copier les feuilles qui ne sont pas test dans test. Les feuilles ayant la même structure, en mettant les enregistrements les uns à la suite des autres. J'ai essayé avec le code ci-dessous, qui me renvoie une erreur que je ne comprends pas:
Sub travail()
Dim feuille As Object, nombre As Long Dim i As Long
nombre = ActiveWorkbook.Sheets.Count
For i = 1 To nombre If Sheets(i).Name <> "test" Then Sheets(i).Range("B1").CurrentRegion.Copy Sheets("test").Range("A1").End(xlDown).Offset(1, 0).Paste
End If Next End Sub
François
Merci beaucoup!
Tu as vu juste! J'ai pu mettre ainsi ma macro que je republie! Je n'ai pas l'impression d'avoir fait simple, mais cela fonctionnne!
Sub travail()
Dim addresse As String, nombre As Long Dim i As Long
nombre = ActiveWorkbook.Sheets.Count
For i = 1 To nombre If Sheets(i).Name <> "test" Then addresse = Range("A65536").End(xlUp).AddressLocal Sheets(i).Range("B1").CurrentRegion.Copy Worksheets("test").Range("A65536").End(xlUp).Select ActiveSheet.Paste Destination:=Worksheets("test").Range(addresse)
End If Next
End Sub
François.
Re-bonjour j'ai appuyé par mégarde sur CTRL ENTREE, donc dans OE, le post est parti !
je fini : avant le paste : objet Worksheet. 2e problème si la feuille test est vide, Range("A1").End(xlDown).Offset(1, 0) renverra l'avant derniere cellule en ligne 65535 ! Il vaut mieux partir du bas : Range("A65536").End(xlUp)...
Stéphane
"SL" a écrit dans le message de news:
Bonjour regarde l'aide sur paste : ********expression.Paste(Destination, Link)
expression Obligatoire. Expression qui renvoie un objet Worksheet.
Destination Argument de type Variant facultatif. Objet Range qui spécifie l'endroit où le contenu du Presse-papiers doit être placé. Si vous ne spécifiez pas cet argument, la méthode utilise la sélection en cours.
Expression est un objet Workshett (ce qui n'est pas le cas avec ton code)
"François" a écrit dans le message de news:
Bonjour, Mon classeur comporte 4 feuilles dont une se nomme test. J'aimerais copier les feuilles qui ne sont pas test dans test. Les feuilles ayant la même structure, en mettant les enregistrements les uns à la suite des autres. J'ai essayé avec le code ci-dessous, qui me renvoie une erreur que je ne comprends pas:
Sub travail()
Dim feuille As Object, nombre As Long Dim i As Long
nombre = ActiveWorkbook.Sheets.Count
For i = 1 To nombre If Sheets(i).Name <> "test" Then Sheets(i).Range("B1").CurrentRegion.Copy Sheets("test").Range("A1").End(xlDown).Offset(1, 0).Paste
End If Next End Sub
Merci beaucoup!
Tu as vu juste! J'ai pu mettre ainsi ma macro que je republie!
Je n'ai pas l'impression d'avoir fait simple, mais cela fonctionnne!
Sub travail()
Dim addresse As String, nombre As Long
Dim i As Long
nombre = ActiveWorkbook.Sheets.Count
For i = 1 To nombre
If Sheets(i).Name <> "test" Then
addresse = Range("A65536").End(xlUp).AddressLocal
Sheets(i).Range("B1").CurrentRegion.Copy
Worksheets("test").Range("A65536").End(xlUp).Select
ActiveSheet.Paste Destination:=Worksheets("test").Range(addresse)
End If
Next
End Sub
François.
Re-bonjour
j'ai appuyé par mégarde sur CTRL ENTREE, donc dans OE, le post est parti !
je fini :
avant le paste : objet Worksheet.
2e problème
si la feuille test est vide, Range("A1").End(xlDown).Offset(1, 0) renverra
l'avant derniere cellule en ligne 65535 !
Il vaut mieux partir du bas : Range("A65536").End(xlUp)...
Stéphane
"SL" <nospam_sl69@laposte.net> a écrit dans le message de news:
eljeLIs2FHA.1980@TK2MSFTNGP15.phx.gbl...
Bonjour
regarde l'aide sur paste :
********expression.Paste(Destination, Link)
expression Obligatoire. Expression qui renvoie un objet Worksheet.
Destination Argument de type Variant facultatif. Objet Range qui
spécifie l'endroit où le contenu du Presse-papiers doit être placé. Si
vous ne spécifiez pas cet argument, la méthode utilise la sélection en
cours.
Expression est un objet Workshett (ce qui n'est pas le cas avec ton code)
"François" <Franois@discussions.microsoft.com> a écrit dans le message de
news: D844E1BA-30D8-4425-94D3-E9486D110EDE@microsoft.com...
Bonjour,
Mon classeur comporte 4 feuilles dont une se nomme test.
J'aimerais copier les feuilles qui ne sont pas test dans test.
Les feuilles ayant la même structure, en mettant les enregistrements
les uns à la suite des autres. J'ai essayé avec le code ci-dessous, qui
me
renvoie
une erreur que je ne comprends pas:
Sub travail()
Dim feuille As Object, nombre As Long
Dim i As Long
nombre = ActiveWorkbook.Sheets.Count
For i = 1 To nombre
If Sheets(i).Name <> "test" Then
Sheets(i).Range("B1").CurrentRegion.Copy
Sheets("test").Range("A1").End(xlDown).Offset(1, 0).Paste
Tu as vu juste! J'ai pu mettre ainsi ma macro que je republie! Je n'ai pas l'impression d'avoir fait simple, mais cela fonctionnne!
Sub travail()
Dim addresse As String, nombre As Long Dim i As Long
nombre = ActiveWorkbook.Sheets.Count
For i = 1 To nombre If Sheets(i).Name <> "test" Then addresse = Range("A65536").End(xlUp).AddressLocal Sheets(i).Range("B1").CurrentRegion.Copy Worksheets("test").Range("A65536").End(xlUp).Select ActiveSheet.Paste Destination:=Worksheets("test").Range(addresse)
End If Next
End Sub
François.
Re-bonjour j'ai appuyé par mégarde sur CTRL ENTREE, donc dans OE, le post est parti !
je fini : avant le paste : objet Worksheet. 2e problème si la feuille test est vide, Range("A1").End(xlDown).Offset(1, 0) renverra l'avant derniere cellule en ligne 65535 ! Il vaut mieux partir du bas : Range("A65536").End(xlUp)...
Stéphane
"SL" a écrit dans le message de news:
Bonjour regarde l'aide sur paste : ********expression.Paste(Destination, Link)
expression Obligatoire. Expression qui renvoie un objet Worksheet.
Destination Argument de type Variant facultatif. Objet Range qui spécifie l'endroit où le contenu du Presse-papiers doit être placé. Si vous ne spécifiez pas cet argument, la méthode utilise la sélection en cours.
Expression est un objet Workshett (ce qui n'est pas le cas avec ton code)
"François" a écrit dans le message de news:
Bonjour, Mon classeur comporte 4 feuilles dont une se nomme test. J'aimerais copier les feuilles qui ne sont pas test dans test. Les feuilles ayant la même structure, en mettant les enregistrements les uns à la suite des autres. J'ai essayé avec le code ci-dessous, qui me renvoie une erreur que je ne comprends pas:
Sub travail()
Dim feuille As Object, nombre As Long Dim i As Long
nombre = ActiveWorkbook.Sheets.Count
For i = 1 To nombre If Sheets(i).Name <> "test" Then Sheets(i).Range("B1").CurrentRegion.Copy Sheets("test").Range("A1").End(xlDown).Offset(1, 0).Paste