Autres If Not IsError(Application.Match

BalighTomy

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

Pièces jointes

  • test2.xlsm
    894.4 KB · Affichages: 7

BalighTomy

XLDnaute Nouveau
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: 7

ChTi160

XLDnaute Barbatruc
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
 

patricktoulon

XLDnaute Barbatruc
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é
 

BalighTomy

XLDnaute Nouveau
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
 

Discussions similaires

Réponses
2
Affichages
248

Statistiques des forums

Discussions
315 080
Messages
2 116 019
Membres
112 637
dernier inscrit
pseudoinconnu