Salut,
Voici de l'aide
1°, Ligne 7, on sait que la feuille (sheet) est de type calcul (worksheet), alors c'est dans la collection worksheets qu'on va aller taper.
2° GRRRRRRRRRR un Select
2°BIS, j'espère que la ligne 10 n'est qu'un exemple. Parce que si tu prétends m'écrire un truc du genre :
c.Select
Selection.fonction
oublie tout de suite que j'ai voulu d'aider
Sauf à le faire exprès, les fonctions select et activate sont mauvaises. Fais une petite recherche sur ce site, j'explique 1000 fois pourquoi.
Ligne 7, il faudra faire l'effort de préciser la feuille à chaque fois. Utiliser une variable est une bonne idée.
Ligne 10, puisque tu as une variable "c" sur la cellule, pas besoin de la sélectionner.
3° Oui, bien sûr que a et b sont des Ranges. Assez curieusement, le type
Cellule n'existe pas en VBA/Excel
Voilà la réponse à ta question :
' // CopierCollerLigne Macro
' // Macro by zeb ;)
' // Avec des Range
Sub CopierCollerLigne(A as Range, B as Range)
Dim C As Range
For Each c In Range(A,B)
C.Copy Destination
Next
End Sub
Sub Appel
' // 1
CopierCollerLigne Worksheets("Suivi Chap.15" ).Range("A2"), Worksheets("Suivi Chap.15" ).Range("B4")
' // 2
With Worksheets("Suivi Chap.15" )
CopierCollerLigne .Range("A2"), .Range("B4")
End With
' // 3
Dim ws15 As Worksheet
Set ws15 = Worksheets("Suivi Chap.15" )
CopierCollerLigne ws15.Range("A2"), ws15.Range("B4")
End Sub