Autres If Not IsError(Application.Match

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

BalighTomy

XLDnaute Nouveau
Salut
bref ====> ôté mots de passe : 12
merci d'avance
Sans titre.png
 

Pièces jointes

re Salut , Bonjour et Bonsoir ^^
même problème
Private Sub cmd_Supprimer_Click()
If TextBox1 = "" Then
MsgBox " il faut sélectionner un salarié pour pouvoir le supprimier"
Exit Sub
End If
If MsgBox("Etes-vous sur de vouloir supprimer ce salarié ? ", vbYesNo + vbCritical, "suppression article") = vbYes Then
Set ws = Sheets("sheet13")
If Not IsError(Application.Match(Matricule, Sheets("sheet13").Rang("A:A"), 0)) Then
ligne = Application.Match(Matricule, Sheets("sheet13").Range("A:A"), 0)
ws.Rows(ligne).EntireRow.Delete
Unload Me
MsgBox "Le salarié s'est correctement supprimé"
UserForm5.Show
End If
End If
End Sub



🙁
 

Pièces jointes

  • Sans titre.png
    Sans titre.png
    223.2 KB · Affichages: 18
Re
ce que j'ai mis et semble fonctionner!
VB:
Private Sub cmd_Supprimer_Click()
Dim REF As Long
If TextBox1 = "" Then
MsgBox " il faut sélectionner un salarié pour pouvoir le supprimier"
Exit Sub
Else
 REF = TextBox1
End If
If MsgBox("Etes-vous  sur de vouloir supprimer ce salarié ? ", vbYesNo + vbCritical, "suppression article") = vbYes Then
Set ws = Sheets("sheet13")
If Not IsError(Application.Match(REF, Sheets("sheet13").Range("A:A"), 0)) Then
ligne = Application.Match(REF, Sheets("sheet13").Range("A:A"), 0)
ws.Rows(ligne).EntireRow.Delete
Unload Me
MsgBox "Le salarié s'est correctement supprimé"
UserForm5.Show
End If
End If
End Sub
jean marie
 
le match avec la gestion en amont tu le fait qu'une fois
VB:
Private Sub cmd_Supprimer_Click()
    Dim REF&,x&
    If TextBox1 = "" Then MsgBox " il faut sélectionner un salarié pour pouvoir le supprimier": Exit Sub
    REF = Val(TextBox1)
    If MsgBox("Etes-vous  sur de vouloir supprimer ce salarié ? ", vbYesNo + vbCritical, "suppression article") = vbYes Then

        With Sheets("sheets13")
            x = Application.IfError(Application.Match(REF, .Range("A:A"), 0), 0)
            If x > 0 Then
                .Rows(x).EntireRow.Delete
                Unload Me
                MsgBox "Le salarié s'est correctement supprimé"
                UserForm5.Show
            End If
        End With
    End If
End Sub
bien que pour réduire encore la charge de travail ,je réduirais la plage de match a ce qui est utilisé
 
le match avec la gestion en amont tu le fait qu'une fois
VB:
Private Sub cmd_Supprimer_Click()
    Dim REF&,x&
    If TextBox1 = "" Then MsgBox " il faut sélectionner un salarié pour pouvoir le supprimier": Exit Sub
    REF = Val(TextBox1)
    If MsgBox("Etes-vous  sur de vouloir supprimer ce salarié ? ", vbYesNo + vbCritical, "suppression article") = vbYes Then

        With Sheets("sheets13")
            x = Application.IfError(Application.Match(REF, .Range("A:A"), 0), 0)
            If x > 0 Then
                .Rows(x).EntireRow.Delete
                Unload Me
                MsgBox "Le salarié s'est correctement supprimé"
                UserForm5.Show
            End If
        End With
    End If
End Sub
bien que pour réduire encore la charge de travail ,je réduirais la plage de match a ce qui est utilisé
re slaut
c marche pas
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
14
Affichages
331
Réponses
4
Affichages
406
Réponses
5
Affichages
200
Retour