Copier coller avec Worksheet_Change

PAD

XLDnaute Occasionnel
Bonjour à tous,

Je me permets de vous demandez un peu d’aide pour ce bout de code, qui me sert a saisir des données de la feuille 1 qui est mon bouillon et, les transférer sur la feuille 2 qui est la copie finale.
J’ai bien réussi le transfert d'une cellule, mais je suis coincé avec plusieurs cellules.
Si une personne pouvait m’expliquer pourquoi mon bout de code ne va pas, ça serai gentil de sa part.


Code :
‘Mon premier bout de code :
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$C$4" Then Target.Copy Sheets("Feuil2").Range("C21 ")
End Sub

‘Le but que je cherche à atteindre :
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$C$4.$K$4" Then Target.Copy Sheets("Feuil2").Range("C21:K21")
End Sub

A bientôt Pad
 

Staple1600

XLDnaute Barbatruc
Re : Copier coller avec Worksheet_Change

Re, bonjour kjin



Une autre façon

Code:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim saisie_ok As Byte
saisie_ok = Application.CountA(Range("C4:K4"))
If saisie_ok = 9 Then
Range("C4:K4").Copy Sheets("Feuil2").Range("C21:K21")
End If
End Sub

La recopie s'effectue si les cellules C4:k4 ne sont pas vides.
 

PAD

XLDnaute Occasionnel
Re : Copier coller avec Worksheet_Change

Bonjour Staple1600, kjin,

Heureux de pouvoir vous lire et merci de me consacrer un peu de temps.

Staple1600, je ne sais pas si c'est parce que je suis sous excel 9.0 mais tes code ne déclenche rien, dommage peux-tu me dire c'est cela a un rapport?

Par contre kjin c'est bon ça fonctionne bien, j'ai fais un essai, je 'ai également tripoter un peu ton code afin de pouvoir prendre en compte un plage de cellule en lignes et colonnes, mais pas moyen je vais encore travailler dessus.

Merci encore de votre aide,

A bientôt Pad
 

bqtr

XLDnaute Accro
Re : Copier coller avec Worksheet_Change

Bonjour,

En adaptant le code de Kjin, essaye ceci :

Code:
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("C4:K10")) Is Nothing Then Range("C4:K10").Copy Sheets("Feuil3").Range("C21")
End Sub

Ca fonctionne bien chez moi, cela copie le plage C4:K10 à chaque changement de valeur dans une cellule de cette plage.
Tu n'es pas obligé de mettre une plage équivalente comme destination de la copie, la cellule supérieure gauche de la plage de destination suffit.

A+
 

Discussions similaires

Réponses
1
Affichages
249

Statistiques des forums

Discussions
312 321
Messages
2 087 266
Membres
103 502
dernier inscrit
talebafia