macro :incrémenter la cellule de reception de copie

  • Initiateur de la discussion axelle la débutante
  • Date de début
A

axelle la débutante

Guest
bonjour le forum, bonjour les forumeux

je me retrouve de nouveau devant un pb dans ma macro, j'ai testé plusieurs solutions mais je ne trouve pas. je m'explique:

par ma macro, je copie une certaine plage de cellules de chaque feuille de mon classeur sur un feuille nommée totaux. ces plages de cellules je les mets (copie juste en valeurs) en a7 et je souhaite que la recopie de la feuille suivante soit sur b7, puis sur c7...

j'ai trouvé pour copié toutes les feuilles les unes aprés les autres mais pas pour incrémenter ma cellule de réception.

Ci joint ma macro:


Dim feuille As Object
Set feuille = Worksheets
For Each feuille In Worksheets

feuille.Select
Range("dy10:em10").Select
Selection.Copy
Sheets("totaux").Select
Range("b7").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False

Next feuille


question subsidiaire : ne va t il pas y avoir un pb quand "totaux" va se copier sur lui meme ?

Comme d'habitude, merci à ceux qui ont pris le temps de lire mon message et un plus grand merci à ceux qui essaieront de m'aider.

Merci
A ++
Axelle
 
A

axelle la débutante

Guest
re le forum, re les forumeux,

bonjour dut-dut,

merci pour ta solution mais
primo je me suis gourée dans mon explication: il fallait lire a7,a8,a9 etc pour mes cellules de reception de copie
et secondo, la macro ne fonctionne pas (meme en remplacant le 7 par ligne).

Si tu pouvait me détailler un peu plus ton raisonnement ?! j'essaierais de suivre :)

Merci
A+
Axelle
 
D

dut-dut

Guest
Tape le code comme suit :

Dim feuille As Object
Set feuille = Worksheets
ligne = 7

For Each feuille In Worksheets

feuille.Select
Range("dy10:em10").Select
Selection.Copy
Sheets("totaux").Select
Range("A" & ligne).Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
ligne = ligne + 1
Next feuille


En fait "ligne" désigne le numéro de ta ligne. Quand tu appelles ta cellule de réception, tu demandes la case d'abscisse A et d'ordonnée "ligne"
 
C

CHti160

Guest
Salut" axelle la débutante"et "dut-dut"
voilà pour ne pas avoir de problème avec la feuille"totaux"
si j'ai bien compri la fin de ton post
question subsidiaire : ne va t il pas y avoir un pb quand "totaux" va se copier sur lui meme ?


Dim ligne As Integer
Dim feuille As Worksheet
ligne = 7
For Each feuille In Worksheets
If feuille.Name <> "totaux" Then
feuille.Select
Range("dy10:em10").Select
Selection.copy
Sheets("totaux").Select
Range("A" & ligne).Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
ligne = ligne + 1
End If
Next feuille

A+++
Jean Marie
 
C

CHti160

Guest
re re à tous
pour que ce soit un peu plus "Fluide
rajouter les 2 morceaux en gras(et non pas de gras

Dim feuille As Worksheet
Application.ScreenUpdating = False
-----
----
Next feuille
Application.ScreenUpdating = True
End Sub
A+++
Jean Marie
 

Discussions similaires

Statistiques des forums

Discussions
312 677
Messages
2 090 821
Membres
104 677
dernier inscrit
soufiane12