VBA : copier coller cellule avec condition doubleclick et boucle
Résolu
momofrai
Messages postés
6
Date d'inscription
Statut
Membre
Dernière intervention
-
momofrai Messages postés 6 Date d'inscription Statut Membre Dernière intervention -
momofrai Messages postés 6 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
je suis débutant sur les macro, je souhaiterai faire un copier coller d'une cellule avec une condition après un doubleclick et répéter cela avec une boucle :
si la cellule à droite de ma target value est egal ma target value alors copier la target value et coller sur la cellule à droite de ma target value puis repeter cela pour toutes les cellules = à ma target value et à droite de cette target value
Voici l'idée mais je n'y connais pas grand chose :
Private sub_before doubleclick (targetvalue as range)
Dim i, j As Integer
Range(i & j).Value = Target.Value
For i = 1 To 20
If Range(i & j).Value = Range(i + 1 & j) Then
Range(i & j).Select
Selection.Copy
Range(i + 1 & j).Select
acivesheet.Paste
End If
Next i
End Sub
Voilà merci d'avevance à la personne qui pourrait m'aider.
je suis débutant sur les macro, je souhaiterai faire un copier coller d'une cellule avec une condition après un doubleclick et répéter cela avec une boucle :
si la cellule à droite de ma target value est egal ma target value alors copier la target value et coller sur la cellule à droite de ma target value puis repeter cela pour toutes les cellules = à ma target value et à droite de cette target value
Voici l'idée mais je n'y connais pas grand chose :
Private sub_before doubleclick (targetvalue as range)
Dim i, j As Integer
Range(i & j).Value = Target.Value
For i = 1 To 20
If Range(i & j).Value = Range(i + 1 & j) Then
Range(i & j).Select
Selection.Copy
Range(i + 1 & j).Select
acivesheet.Paste
End If
Next i
End Sub
Voilà merci d'avevance à la personne qui pourrait m'aider.
A voir également:
- VBA : copier coller cellule avec condition doubleclick et boucle
- Excel compter cellule couleur sans vba - Guide
- Incompatibilité de type vba ✓ - Forum VB / VBA
- Erreur 13 incompatibilité de type VBA excel ✓ - Forum Excel
- Mkdir vba ✓ - Forum VB / VBA
- Dépassement de capacité vba ✓ - Forum Excel
5 réponses
Bonjour,
Ce serait plutôt ceci :
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Dim i, j As Integer
i = Target.Row
j = Target.Column
For k = i To (i + 20)
If Cells(k, j).Value = Cells(k, j + 1).Value Then
Cells(k, j).Select
Selection.Copy
Cells(k, j + 1).Select
ActiveSheet.Paste
End If
Next k
End Sub
Mais je ne comprends pas l'intérêt de ta manip ! Si les 2 cellules sont égales on copie la 1ere dans la 2nde sinon on ne fait rien; donc dans tous les cas ça ne change rien aux données de départ !!!!!
Il y a quelque chose qui m'échappe !
Si tu peux éclairer ma lanterne
Ce serait plutôt ceci :
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Dim i, j As Integer
i = Target.Row
j = Target.Column
For k = i To (i + 20)
If Cells(k, j).Value = Cells(k, j + 1).Value Then
Cells(k, j).Select
Selection.Copy
Cells(k, j + 1).Select
ActiveSheet.Paste
End If
Next k
End Sub
Mais je ne comprends pas l'intérêt de ta manip ! Si les 2 cellules sont égales on copie la 1ere dans la 2nde sinon on ne fait rien; donc dans tous les cas ça ne change rien aux données de départ !!!!!
Il y a quelque chose qui m'échappe !
Si tu peux éclairer ma lanterne
DOUBLON !
https://forums.commentcamarche.net/forum/affich-26942834-vba-copier-coller-cellule-avec-condition-doubleclick-boucle
demande de suppression
https://forums.commentcamarche.net/forum/affich-26942834-vba-copier-coller-cellule-avec-condition-doubleclick-boucle
demande de suppression
Hello,
merci bcp pour ton aide, en fait j'ai oublié de présicé que mes cellules qui se suivent peuvent être égales mais avec une couleur de remplissage qui diffère.
voici ce je veux faire :
range A1 = "momo" avec remplissage jaune par exemple + un commentaire
range B1 = "momo" sans remplissage + sans commentaire
dans ce cas je veux que ma case B1 soit égal a A1 d'ou ce cpoier coller (pour avoir exactement le même remplissage et le même commentaire que A1.
Merci d'avance
merci bcp pour ton aide, en fait j'ai oublié de présicé que mes cellules qui se suivent peuvent être égales mais avec une couleur de remplissage qui diffère.
voici ce je veux faire :
range A1 = "momo" avec remplissage jaune par exemple + un commentaire
range B1 = "momo" sans remplissage + sans commentaire
dans ce cas je veux que ma case B1 soit égal a A1 d'ou ce cpoier coller (pour avoir exactement le même remplissage et le même commentaire que A1.
Merci d'avance
Re, merci bcp, ça corresppond exactement à ce que je veux, j'ai juste inversé colonne et ligne (je m'étais mal exprimé), maintenant je trouve que le j+20 va scruter très loin (mon cas max = 20 et mon cas min = 2), en gros c'est une perte de pour mon cas min. Je souhaiterais que la boucle s'arrête dès que :
cells (i, k) et cells (i,k+1) sont différentes comme cela il n'y a pas besoin d'aller aussi loin.
Merci d'avance
----------------------------------------------------------------------------
pour info j'ai modifié colonne et ligne :
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Dim i, j As Integer
i = Target.Row
j = Target.Column
For k = j To (j + 20)
If Cells(i, k).Value = Cells(i, k + 1).Value Then
Cells(i, k).Select
Selection.Copy
Cells(i, k + 1).Select
ActiveSheet.Paste
End If
Next k
End Sub
cells (i, k) et cells (i,k+1) sont différentes comme cela il n'y a pas besoin d'aller aussi loin.
Merci d'avance
----------------------------------------------------------------------------
pour info j'ai modifié colonne et ligne :
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Dim i, j As Integer
i = Target.Row
j = Target.Column
For k = j To (j + 20)
If Cells(i, k).Value = Cells(i, k + 1).Value Then
Cells(i, k).Select
Selection.Copy
Cells(i, k + 1).Select
ActiveSheet.Paste
End If
Next k
End Sub
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question