Codage macro

Bonjour,

Comment on pourrait faire en VBA, pour lui dire :

Si pour un même numéro de sinistre (colonne10) et pour un même code compagnie (colonne8) et que Si en colonne M il y a "ANNULATION TECHNIQUE" alors en colonne 13 je mets sur toutes les lignes pour le même sinistre et le même code compagnie, le commentaire "ANNULATION TECHNIQUE".

Voici le fichier excel ci-joint normalement le fichier comporte 5000 lignes donc il faut en tenir compte pour le code de la macro afin qu'il le fasse sur toutes les lignes.

Bonjour,

Si en colonne M il y a "ANNULATION TECHNIQUE" alors en colonne 13 je mets

la colonne M et la colonne 13 c'est pareil ?

Bonjour,

Si en colonne M il y a "ANNULATION TECHNIQUE" alors en colonne 13 je mets

la colonne M et la colonne 13 c'est pareil ?

Exactement

peux tu ajouter sur ton fichier le résultat attendu ( en colonne L)

ps/ j'ai bien compris qu'il faudra mettre le résultat en colonne M

peux tu ajouter sur ton fichier le résultat attendu ( en colonne L)

ps/ j'ai bien compris qu'il faudra mettre le résultat en colonne M

En L le résultat est déjà dans le fichier

oups, en colonne N

oups, en colonne N

Tu as pas besoin de cette colonne ! Ne t'inquiète aps

peux tu ajouter sur ton fichier le résultat attendu

Et aussi désolé mais je viens de voir qu'il ya pas les même numéro de sinistre mais il s'agit bien des même numéro de sinistre pour les ligne du fichier que je t'ai envoyé.

A changé par le numéro de sinistre suivant pour toutes les lignes : B1380587

Voici le résultat attendus

re,

en cellule M3,

=SI(SOMMEPROD(($J$3:$J$100000=J3)*($L$3:$L$100000="ANNULATION TECHNIQUE"))>0;"ANNULATION TECHNIQUE";L3)

à recopier vers le bas

Bonjour,

Ça ne fonctionne pas si je l'ajoute à la suite de cette formule :

=SI(I3="";"PRINCIPAL "&STXT(O3;9;8);SI(GAUCHE(I3;5)="REGLT";"REGLT";SI(GAUCHE(I3;1)="G";"TAXE DE GESTION";SI(GAUCHE(I3;1)="P";"PRINCIPAL "&STXT(O3;9;8);SI(GAUCHE(I3;1)="R";"RECOURS "&STXT(O3;9;8);SI(GAUCHE(I3;1)="F";"FRAIS"))))))

J'ai essayer de faire un code pour la macro mais il me prends pas en compte la ligne avec le ElseIf :

With Sheets("SUIVTRANS EN COURS")
    Derligne = .Range("A" & Rows.Count).End(xlUp).Row
    For j = 3 To Derligne

    'ANNULATION TECHNIQUE (5)
        If Mid(.Cells(j, 6).Text, 5, 1) = "A" And Mid(.Cells(j, 6).Text, 1, 1) = "S" Then
        .Cells(j, 12).Value = "ANNULATION TECHNIQUE"

    [u][b]   ElseIf .Cells(j, 12).Value = "ANNULATION TECHNIQUE" Then
       .Cells(j, 13).Value = "ANNULATION TECHNIQUE"[/b][/u]

En fait, il me prends pas en compte la copie du commentaire « annulation technique » en colonne 13, si pour un même sinistre et un même code payeur et que en type d’opération, il y a « ANNULATION TECHNIQUE » alors il me mets sur toutes les lignes du même sinistre et même code compagnie le commentaire a « ANNULATION TECHNIQUE » en colonne M.

re,

Ça ne fonctionne pas si je l'ajoute à la suite de cette formule :

=SI(I3="";"PRINCIPAL "&STXT(O3;9;8);SI(GAUCHE(I3;5)="REGLT";"REGLT";SI(GAUCHE(I3;1)="G";"TAXE DE GESTION";SI(GAUCHE(I3;1)="P";"PRINCIPAL "&STXT(O3;9;8);SI(GAUCHE(I3;1)="R";"RECOURS "&STXT(O3;9;8);SI(GAUCHE(I3;1)="F";"FRAIS"))))))

elle est ou cette formule, je ne la trouve pas dans ton fichier ?

Elle est en L3 normalement mais j'ai fais un copier collage en valeur pour l'exemple sur le fichier que je t'ai envoyé pour ça que tu la vois pas la formules

Ça ne fonctionne pas si je l'ajoute à la suite de cette formule :

tu as dit que cette formule est en colonne L

et la formule que j'ai suggéré va en colonne M

alors je ne comprend pas ta remarque ?

Rechercher des sujets similaires à "codage macro"