Insérer une ligne après un mot donné

S

stratos

Guest
Bonjour à tous,

J'essaye de débuter en vba et depuis quelques jours je commence à désespérer.J'ai déja regardé pas mal de Forums sur vba mais je ne trouve pas réponse à ma question.
Voici mon problème : Dans une colonne donné par exemple la colonne B,
je voudrais insérer une ligne chaque fois qu'une cellule
contient le mot "Somme".
En moyenne sur mon tableau ce mot apparaît une quinzaine de fois et je voudrais automatiser le processus afin de préserver mes yeux du strabisme.
J'ai trouvé et un peu modifié le code suivant qui me permet d'ajouter une ligne en bas du mot "Somme".
Cependant ceci fonctionne que pour la première cellule contenant le mot"Somme".
Comment peut on obtenir un résultat identique pour les autres cellules de ma colonne contenant le mot "Somme"?

Merci d'avance pour votre aide ou conseil

Dim FoundCell As Range

Set FoundCell = Range("B:B").Find(what:="Somme")
If Not FoundCell Is Nothing Then
FoundCell.Activate
ActiveCell.Offset(1, 0).EntireRow.Insert shift:=xlDown

End If
 
M

Michel_M

Guest
Bonsoir le Forum,

Stratos,

ci dessous une macro du dimanche avec comme base la recherche de "somme" dans la colonne A (au lieu de B, excuses moi, je n'avais pas noté)


Sub inserer_apres_somme()

Dim nbre, cptr, lig As Long

Application.ScreenUpdating = False

nbre = Application.CountIf(Range("A:A"), "somme")


cptr = 1
lig = 1
While cptr <= nbre
lig = Columns(1).Find("somme", Cells(lig, 1), , , xlByRows).Row + 1
Rows(lig).Insert Shift:=xlDown
cptr = cptr + 1
Wend
End Sub

devrait y avoir + simple

Bonne soirée
Michel
 
S

stratos

Guest
Bonjour Michel,

Merci beaucoup pour ton aide cela fonctionne à merveille.
Je suis un peu plus motivé,maintenant, pour continuer
à décrypter le code vba.
Encore merci et bonne journée.

Stratos
 

Discussions similaires

Statistiques des forums

Discussions
312 370
Messages
2 087 690
Membres
103 640
dernier inscrit
So pizza