XL 2013 Problème incompatibilité de type

Chris Linefield

XLDnaute Junior
Bonjour tout le monde !

Je rencontre un petit problème avec mon VB, il m'indique une erreur d'exécution '13' : Incompatibilité de type
VB:
Private Sub retirer_Click()
'bouton du suppression d'une réf d'une place avec recherchv de la place puis effacement des données associées
Dim sup As Variant
    sup = Application.WorksheetFunction.Application.VLookup(ComboBox2, Range("A1:D300"), 2, False)
        Cells(sup, 3).ClearContents
        Cells(sup, 4).ClearContents
        ComboBox4 = ""
        TextBox4 = ""
        ComboBox2 = "Emplacement libre"
        ComboBox4.Value = "Choisir article"
ComboBox1.Value = "NA"
ThisWorkbook.Save
End Sub

Le bouton sert a RAZ un emplacement sur une cellule.

Pouvez-vous me venir en aide ?
 
Solution
Bonjour @Chris Linefield , @Marcel32

Je te propose ceci:

VB:
Private Sub retirer_Click()
'bouton du suppression d'une réf d'une place avec recherchv de la place puis effacement des données associées
Dim sup As Variant

On Error GoTo errorHandler

    sup = Application.WorksheetFunction.Application.VLookup(ComboBox2, Range("A1:D300"), 2, False)
       
        Cells(sup, 3).ClearContents
        Cells(sup, 4).ClearContents
       
errorHandler:
    'indique le numéro et la description de l'erreur survenue
    If Err.Number <> 0 Then
        MsgBox Err.Number & vbLf & Err.Description  ' <== Message optionnel
        MsgBox "La valeur " & ComboBox2.Value & " est non trouvée", vbCritical, "Problème"
        Exit Sub
    End If...

TooFatBoy

XLDnaute Barbatruc
Voilà, j'ai regardé, et j'ai pondu un truc à peu près identique à celui de @Phil69970.

Je me permet de tout de même mettre ma proposition ici :
VB:
Private Sub retirer_Click()
' Bouton de suppression d'une réf d'une place avec RECHERCHEV de l'emplacement, puis effacement des données associées
Dim sup As Variant

    sup = Application.WorksheetFunction.Application.VLookup(ComboBox2, Range("A1:D300"), 2, False)

    If IsNumeric(sup) Then
        Cells(sup, 3).ClearContents
        Cells(sup, 4).ClearContents
        ComboBox4 = ""
        TextBox4 = ""
        ComboBox2 = "Emplacement libre"
        ComboBox4.Value = "Choisir article"
        ComboBox1.Value = "NA"
        ThisWorkbook.Save
    Else
        MsgBox "/!\  Emplacement " & ComboBox2.Value & " non trouvé !", vbOKOnly, "Erreur"
    End If

End Sub
 

Statistiques des forums

Discussions
315 098
Messages
2 116 189
Membres
112 679
dernier inscrit
Yupanki