Essaie de comprendre ce que tu fais.
Je t'ai donné le code à utiliser là
Comme j'ignorais d'où tu lançais ton code, je n'ai pas mis le nom de la sub appelante mais le code y était :
Ne change rien et teste
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 Private Sub CommandButton1_Click() Dim i As Long Sheets("dotation2").Activate derniereligne = Range("A65535").End(xlUp).Row For i = 1 To derniereligne if InStr(LCase(Cells(i, 1).Value), "observation") <> 0 then exit for Next Call SupprimerLignesDontCellulesFusionnées(i)
A+
Aller, je me fends d'une explication
Dans ce code, quand "observation" est trouvé "on" sort de la boucle For... next avec la valeur de i correspondant à la ligne dans laquelle se trouve "observation"
Call SupprimerLignesDontCellulesFusionnées(i) lance donc la procédure qui supprime les lignes avec le i de la ligne observation.
Comme j'ignorais si elle devait être ou non supprimée, mon code efface la ligne observation. Si elle ne doit pas être effacée, tu corriges en mettant
A+
Code : Sélectionner tout - Visualiser dans une fenêtre à part Call SupprimerLignesDontCellulesFusionnées(i + 1)
PS - Si tu n'y arrives pas, passe ton fichier
Partager