Affichage d'un message box

Bonjour,
J’ai une 5 listbox dans le même userform.
Dans ces listes je dois supprimer des éléments comme suit:
1- sélectionner l’item a supprimer, si on le choisit pas on a un message qui s’affiche:
« Choisir l’élément a supprimer »
2- cliquer sur un bouton pour supprimer l’item
3- Message s’affiche(« Etes vous sur de vouloir supprimer ? »
4-Répondre par oui : item supprimé de la liste et de la feuille
5-Répondre par non: Rien ne se produit

*Opération se fait 5 fois vu que je travaille sur 5 liste ca depend l’element il est ou.
Code:
Private Sub CommandButton23_Click()
Dim ws_Lame As Worksheet
Dim Modele As String
Dim Plage, Plage1, Plage2, Plage3 As Range
Dim Trouve, Trouve1, Trouve2, Trouve3 As Range
Dim L, L1, L2, L3, L4 As Integer

Modele = « Liste_Lame_ » & Me.TextBox1.Value
Set ws_Lame = ActiveWorkbook.Worksheets(Modele)
dl = ws_Lame.Range(« A65530 »).End(xlUp).Row

'Supprimer lame de la liste de toutes les lames
If Me.ListBox_Lames.ListIndex = -1 Then
MsgBox (« Veuillez choisir une lame »)
Else
If MsgBox(« Etes vous sur de vouloir suprimer ? », vbYesNo) = vbYes Then
L = ListBox_Lames.ListIndex + 2
Lame = Me.ListBox_Lames.Value
Set Plage = ws_Lame.Columns(2)
Set Trouve = Plage.Cells.Find(what:=Lame)
If Trouve Is Nothing Then
Else
ws_Lame.Range(« B » & L).Delete shift:=xlUp
ListBox_Lames.List = ws_Lame.Range(« B2:B » & dl).Value
End If
End If
End If

'Supprimer une lame a cntroler
If Me.ListBox_LamesAC.ListIndex = -1 Then
MsgBox (« Veuillez choisir une lame »)
Else
If MsgBox(« Etes vous sur de vouloir suprimer ? », vbYesNo) = vbYes Then
L1 = ListBox_LamesAC.ListIndex + 2
LameAC = Me.ListBox_LamesAC.Value
Set Plage1 = ws_Lame.Columns(3)
Set Trouve1 = Plage1.Cells.Find(what:=LameAC)
If Trouve1 Is Nothing Then
Else
ws_Lame.Range(« C » & L1).Delete shift:=xlUp
End If
ListBox_LamesAC.List = ws_Lame.Range(« C2:C » & dl).Value
End If
End If

'Supprimer une lame controlée
If Me.ListBox_LamesC.ListIndex = -1 Then
MsgBox (« Veuillez choisir une lame »)
Else
If MsgBox(« Etes vous sur de vouloir suprimer ? », vbYesNo) = vbYes Then
L2 = ListBox_LamesC.ListIndex + 2
LamesC = Me.ListBox_LamesC.Value
Set Plage2 = ws_Lame.Columns(4)
Set Trouve2 = Plage2.Cells.Find(what:=LamesC)
If Trouve2 Is Nothing Then
Else
ws_Lame.Range(« D » & L2).Delete shift:=xlUp
End If
ListBox_LamesC.List = ws_Lame.Range(« D2:D » & dl).Value
End If
End If

'Supprimer lame en service
If Me.ListBox_LamesS.ListIndex = -1 Then
MsgBox (« Veuillez choisir une lame »)
Else
If MsgBox(« Etes vous sur de vouloir suprimer ? », vbYesNo) = vbYes Then
L3 = ListBox_LamesS.ListIndex + 2
LamesS = Me.ListBox_LamesS.Value
Set Plage3 = ws_Lame.Columns(5)
Set Trouve3 = Plage3.Cells.Find(what:=LamesS)
If Trouve3 Is Nothing Then
Else
ws_Lame.Range(« E » & L3).Delete shift:=xlUp
End If
ListBox_LamesS.List = ws_Lame.Range(« E2:E » & dl).Value
End If
End If

'Supprimer lame a réafuuter
If Me.ListBox_LamesS.ListIndex = -1 Then
MsgBox (« Veuillez choisir une lame »)
Else
If MsgBox(« Etes vous sur de vouloir suprimer ? », vbYesNo) = vbYes Then
L4 = ListBox_LamesR.ListIndex + 2
LamesR = Me.ListBox_LamesR.Value
Set Plage4 = ws_Lame.Columns(6)
Set Trouve4 = Plage4.Cells.Find(what:=LamesR)
If Trouve4 Is Nothing Then
Else
ws_Lame.Range(« F » & L4).Delete shift:=xlUp
End If
ListBox_LamesR.List = ws_Lame.Range(« F2:F » & dl).Value
End If
End If
End Sub

Problème:
Affichage du message 5 fois:
MsgBox (« Veuillez choisir une lame »)
Or qu’il doit s’afficher seulement qu’on choisi un élément d’une seule liste.

Bonjour,
c’est normal car si vos ListBox sont vides, on appelle la MsgBox Veuillez choisir une lame !

Si je comprends votre demande, on ne peut choisir qu’une ListBox ?
Par exemple Supprimer une lame en service ou alors Supprimer une lame contrôlée, etc ?

Oui c’est ça on chosii une seule listbox

Ce sujet a été automatiquement fermé après 30 jours. Aucune réponse n’est permise dorénavant.