J’ai un problème qui me tracasse et j’aimerais bien que vous m’aider à le résoudre.
dans la même colonne j’ai 3 données dans des cellules fusionnées comme vous voyez dans l’image, je cherche à créer un lien d’égalité entre ces cellules qui fait que si je modifie une des 3 cellules les 2 autres prennent la même valeur de la cellule modifiée (en résumé les cellules se mettent à jour par rapport à la dernière cellule modifiée).
Le mieux c que la solution soit en VBA mais c pas grave si c est par formules
éclairez moi SVP ça me bloc -_-
En vous remerciant.
Private Sub Worksheet_Change(ByVal Target As Range)
Dim x%, Dl%, Nb%, Val%, Lig%
Application.EnableEvents = False 'Déactive les événements
Dl = Range("B" & Rows.Count).End(xlUp).Row 'Dernière ligne colonne B
If Not Application.Intersect(Target, Range("C2:C" & Dl)) Is Nothing Then 'Sur chgt valeur colonne C2 à C et dernière ligne
Lig = Target.Row 'N° ligne de chgt de valeur
Val = Target 'Valeur de la cellule changé
For x = 2 To Dl 'boucle sur la colonne C
Nb = Cells(x, 2).MergeArea.Count 'Compte le Nb cellule fusionnée
If Lig > 8 Then GoTo suite1 'Si la ligne est Sup à 8 (fin de A3) je vais à la suite1
If Cells(x, 2) = "A1" Or Cells(x, 2) = "A2" Or Cells(x, 2) = "A3" Then 'sinon
Cells(x, 3) = Val 'je place la valeur
End If
GoTo suite2 'je vais à suite2
suite1:
If Cells(x, 2) = "A4" Or Cells(x, 2) = "A5" Or Cells(x, 2) = "A6" Then
Cells(x, 3) = Val
End If
suite2:
x = x + Nb - 1 'ajoute le Nb de cellule à sauter par rapport au Nb cellules fusionnées
Next x
End If
Application.EnableEvents = True 'Réactive les événements
End Sub
Merci Mimimathy,
J’ai vu le code durant ce week end il fait ce qu il faut faire je vais le combiner avec d’autre (j ai une usine à gaz ) si je rencontre des problèmes de non compatibilité je te fais signe j’ai le doute que je vais avoir un petit souci avec le changement de numéro automatique parce que ton code est fait pour un changement manuel je pense à cause du (target). je vais tester et j vais voir ce que ça donne
Comme c’étai prévu j’ai pas pu les associer
en fait, j’ai 2 codes qui fonctionnent parfaitement et je veux associer ce code de la suite (qui fonctionne parfaitement aussi )avec ces 2 codes
Le fichier explique mieux la chose et il est pas compliqué
1 sur la feui 1 j’ai un tableau de validation de produit qui sont livrés par Fait dans la colonne E exécutable via un bouton qui envoi un OK à la feuil 2 pour les produit validés.
2 sur la feuil 2 un privat sub chng val : une fois j’ai un ok (automatique) dans la colonne I la numéro de produit dans la cellule i G sera i G +1
3 code de la suite inscrit dans la feuil 2 qui fait l’ égalité entre le numéro de certains produits RR.xlsm (28,5 Ko)
Dans la feuille 2, je vois 2Private Sub Worksheet_Change(ByVal Target As Range)
Déjà là, c’est pas bon
Ensuite, il suffit de voir un peu dans le code que j’ai fourni et que tu as “bêtement collé” de modifier les colonnes concernées
Et là il y a du mieux
j’ai bêtement coller juste pour mettre les 3 codes sur le meme fichier je sais que 2 private sub ne marchera jamais.
ça ne marche toujours pas j’ai l’erreur d’incompatibilité du type je croix que ça vient du fait que Target représente une seule cellule quand je numéro change manuellement dans la cellule mais dans le cas de changement automatique cela représente un ensemble de cellules donc faut décomposé le traitement sur chaque cellules (un opinion d’un débutant )
Entre ta 1ère demande et ce que tu demandes, tu ne crois pas que si tu avais mis tout dés le départ, on ne serais pas à revenir trente six fois sur le problème RR.xlsm (26,9 Ko)
Tu m’engueule comme un bébé
Merci pour le temps consacré et excuse moi de ne pas etre directe dès le début (je pensai que je puisse y arriver tout seul).
Remarque : on est revenu 10 fois pas 36
Bonne journée et merci beaucoup.
je rigole ça ce voit de ta générosité (t es la plus présente sur ce site )
J’ai adoré ta manière de faire apprendre les gens
Merci bcp Mimi et continue à etre généreuse.
RESPECT
PS : si tu t’innerve bcp t auras les rides très rapidement attention