Bonjour à tous,
Voilà mon problème,
J'ai une useform où j'y es mis des combobox, un bouton ok qui va copier mes résultats sur une feuille appeler "EVENEMENTS".

J'ai fait en sorte que lors d'un appui sur mon bouton OK et que si mes combobox ne sont pas renseignées, un message d'erreur s'affiche comme quoi la combobox n'a pas été renseignée. Le problème est que même si mes combobox ne sont pas renseignées et que j'appui sur OK il va copier les résultats dans ma feuille "EVENEMENTS" avec des renseignements manquant pour le coup.

Alors ce que je demande c'est comment empêcher la copie dans la feuille "EVENEMENTS" si mes combobox ne sont pas renseignées ou quand il y a un message d'erreur.

Si cela peut vous aider, voici mon code:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
Private Sub CommandButton_OK_Click()
Dim DerLig As Integer
 
With Worksheets("EVENEMENTS")
    DerLig = .Range("B" & Rows.Count).End(xlUp).Row + 1
    .Range("B" & DerLig).Value = nomComboBox.Value
    .Range("C" & DerLig).Value = fenginComboBox.Value
    .Range("D" & DerLig).Value = enginComboBox.Value
    .Range("E" & DerLig).Value = typeoperationComboBox.Value
    .Range("F" & DerLig).Value = tempsComboBox.Value
    .Range("G" & DerLig).Value = DTPicker1.Value
End With
'Garder en historique, visible par l'utilisateur, que les 10 dernières saisies
Dim DerniereLigneSaisie As Integer, PremiereLigne As Integer
DerniereLigneSaisie = Sheets("EVENEMENTS").Columns(2).Find("*", , , , xlByColumns, xlPrevious).Row
If DerniereLigneSaisie - 8 < 2 Then
    PremiereLigne = 2
Else
    PremiereLigne = DerniereLigneSaisie - 8
End If
 
'Obligation de mettre un critère dans nom
If nomComboBox = "" Then
    MsgBox "Veuillez saisir votre nom"
End If
 
'Obligation de mettre un critère dans Famille Engin
If fenginComboBox = "" Then
    MsgBox "Veuillez saisir une famille d'engin"
End If
 
'Obligation de mettre un critère dans Engin
If enginComboBox = "" Then
    MsgBox "Veuillez saisir un engin"
End If
 
'Obligation de mettre un critère dans Type d'Opération
If typeoperationComboBox = "" Then
    MsgBox "Veuillez saisir un type d'opération"
End If
 
'Obligation de mettre un critère dans Temps passée
If tempsComboBox = "" Then
    MsgBox "Veuillez saisir le temps passée"
End If
 
'Obligation de mettre un critère dans Date
If DTPicker1 = "" Then
    MsgBox "Veuillez saisir la date de votre opération"
End If
 
ListBox1.RowSource = "EVENEMENTS!A" & PremiereLigne & ":G" & DerniereLigneSaisie
End Sub
Merci d'avance de votre aide !

Cordialement.