XL 2016 Annuler une commande si erreur

HelloDy

XLDnaute Junior
Bonjour à tous,

J'ai une macro qui recherche un texte à effacer :

Cells.Find(What:="texte recherché").Activate
Selection.Clear

Si le texte n'est pas trouvé j'obtiens un message d'erreur.
Comment faire pour que dans ce cas, la macro aille directement à End Sub au lieu de planter ?

Merci d'avance !


Elo
 

Calvus

XLDnaute Barbatruc
Bonjour,

VB:
Sub Recherche()
Dim marecherche As String, recherche As Range


On Error GoTo fin
Set recherche = Cells.Find(What:="texte recherché") 

If Not recherche Is Nothing Then

Cells.Find(What:=recherche, After:=ActiveCell, LookIn:= _
        xlFormulas, LookAt:=xlWhole, SearchOrder:=xlByRows, SearchDirection:= _
        xlNext, MatchCase:=False, SearchFormat:=False).Activate

Do Until MsgBox("Continuer ?", vbYesNo) = vbNo
    Cells.FindNext(After:=ActiveCell).Activate
Loop

Application.CutCopyMode = False
fin: If recherche Is Nothing Then
MsgBox "Donnée inexistante"
Exit Sub
End If
Application.CutCopyMode = False
End Sub

Quelque chose dans ce genre là, car sans exemple dur d'être précis.

A+
 

HelloDy

XLDnaute Junior
Coucou @Lika0n , coucou @Calvus,

Merci pour le lien mais quand je lis ce genre d'"aide" je ne comprends jamais rien :(

Et merci pour ta solution @Calvus mais c'est beaaaaucoup trop compliqué ^^ j'ai juste besoin que s'il ne trouve pas le texte correspondant il fasse end sub, rien de plus. Est-ce qu'il y a un moyen simple en 2 ou 3 lignes ?

Merci et désolée d'être jamais contente :p


Elo
 

Discussions similaires

Statistiques des forums

Discussions
311 720
Messages
2 081 915
Membres
101 838
dernier inscrit
Christelle.B86