Remplissage conditionnel

Résolu/Fermé
jerome99 - 25 juil. 2016 à 17:47
 jerome99 - 26 juil. 2016 à 17:46
Bonjour,

J'aurais besoin d'aide pour du "remplissage conditionnel"

je remplis un tableau au long cours (1250 lignes aujourd'hui)

la colonne A correspond à un nom avec des noms qui reviennent périodiquement le long des lignes.

Ce que je souhaite obtenir : c'est plus clair avec un exemple directement,

Quand je remplis la case "A1250" avec un nom identique à celui de la case "A500 " je voudrais que le texte dans la case "M500" se copie automatiquement dans la case "M1250"

merci pour votre aide

colonne A : des noms, des noms....
colonne M : du texte


3 réponses

via55 Messages postés 14501 Date d'inscription mercredi 16 janvier 2013 Statut Membre Dernière intervention 28 novembre 2024 2 735
25 juil. 2016 à 18:26
Bonjour

Une possibilité par macro à mettre dans le worksheet de la feuille concernée (ALT+F11 pour ouvrir l'éditeur VBA, double clic sur la feuille dans l'arborescence à gauche, copier-coller la macro dans la page blanche puis fermer l'éditeur)
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("A:A")) Is Nothing Then
For x = 1 To Target.Row - 1
If Range("A" & x) = Target.Value Then Range("M" & Target.Row) = Range("M" & x)
Next
End If
End Sub


Cdlmnt
Via
0
Merci pour la réponse si rapide, ca marche MAIS :

ca fonctionne quand je remplis la colonne A "a la main" mais en fait je la remplis via "copier/coller" (je copie des blocs de 5 à 15 lignes de la colonne A à J) ca rapporte une erreur (manifestement sur la 4ème ligne)

encore merci
0
via55 Messages postés 14501 Date d'inscription mercredi 16 janvier 2013 Statut Membre Dernière intervention 28 novembre 2024 2 735 > jerome99
26 juil. 2016 à 13:18
Re

C'est normal la macro est faite pour réagir au changement dans une seule cellule, tu n'avais pas précisé que tu copiais des plages entière
Mais la formule de ccm81 (que je salue bien au passage) te dispense d'une macro
Pour l'adapter à une autre colonne il te suffit de changer les M dans la formule par la lettre de la nouvelle colonne

Cdlmnt
0