Macro dupliquant une ligne si une cellule contient tel caractère

Résolu
dhaze Messages postés 109 Date d'inscription   Statut Membre Dernière intervention   -  
dhaze Messages postés 109 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

Je reviens vers vous pour un problème dont je ne maitrise pas du tout la résolution !

Il s'agit de créer un script VBA qui effectuerait l'action suivante sur la même feuille :

Partir de la ligne 2
Si en A2 figure le mot "MOT_1" ajouter au mot de B2 le suffixe "_A"
Puis copier toute la ligne et l'insérer en dessous
Et ajouter au mot de B3 de la ligne collée le suffixe "_B"
Puis rechercher ainsi de suite tous les mots "MOT_1" dans les lignes suivantes de la colonne A et répéter l'opération...

Pour les suffixes, je ne sais pas ce qui est le plus logique, ou simple
Copier la ligne avant de la dupliquer puis renommer B2
Ou remplacer le "_A" de B3 par "_B" ?


Merci
Lo.

17 réponses

via55 Messages postés 14512 Date d'inscription   Statut Membre Dernière intervention   2 746
 
Bonsoir dhaze,

Essaie cette macro

Sub ajout()
Dim DernLigne As Long
DernLigne = Range("A" & Rows.Count).End(xlUp).Row
For n = DernLigne To 2 Step -1
If Range("A" & n) = "MOT_1" Then
    Rows(n & ":" & n).Select
    Application.CutCopyMode = False
    Selection.Copy
    Selection.Insert Shift:=xlDown
    Range("B" & n).Select
    ActiveCell.FormulaR1C1 = Range("B" & n).Value & "_A"
     Range("B" & n + 1).Select
    ActiveCell.FormulaR1C1 = Range("B" & n + 1).Value & "_B"
    End If
    Next
End Sub


Cdlmnt

"L'imagination est plus importante que le savoir." A. Einstein
0
dhaze Messages postés 109 Date d'inscription   Statut Membre Dernière intervention  
 
J'étais absente la semaine dernière, mais quelle bonne surprise pour mon retour, cela fonctionne parfaitement. Je te remercie. Je vais gagner un temps fou !

Je sais pas si c'est abuser (pour ma culture générale), pourrais-je savoir en langage courant ce que fait chaque ligne ?

Tu n'es pas obligé d'accepter ;-)

Merci encore
0