Formulaire pour alimenter une base de données

Bonjour à tous,

Je suis actuellement bloquée sur mon formulaire en effet je souhaiterais que celui-ci mette un message d'erreur quand tout les champs obligatoire ne sont pas remplis (ça c'est bon), lorsque l'on appuie sur "ok" de ce message on retourne au formulaire , et si le formulaire est correctement rempli qu'il incrémente la base de données et il affiche un message et ferme le formulaire (j'ai aussi cette partie)

Si dessous mon code

Private Sub CommandButton1_Click()

'securité

If TextBox1.Value = "" Or TextBox2.Value = "" Or ComboBox1.Value = "" Or ComboBox2.Value = "" Or ComboBox3.Value = "" Then
MsgBox ("Merci de remplir tout les champs"), vbOKOnly

End If
Exit Sub

'Alimentation de la base de données
Dim g As Integer

g = Range("A" & Rows.Count).End(xlUp).Row
Range("A" & g + 1).Value = ComboBox1.Value
Range("B" & g + 1).Value = TextBox1.Value
Range("D" & g + 1).Value = TextBox2.Value
Range("E" & g + 1).Value = ComboBox2.Value
Range("F" & g + 1).Value = ComboBox3.Value
Range("G" & g + 1).Value = TextBox3.Value
Range("H" & g + 1).Value = TextBox4.Value

'Fermeture du Formulaire
MsgBox ("Merci pour ces informations, elles ont été intégrées dans la base de données.")
Formulaire.Hide

Bonjour,

Et du coup,qu'est ce que tu souhaites, car à te lire tout fonctionne

Et

Bonjour,

Le problème est le suivant :

SI je mets "exit sub" , même si tout les champs sont remplis le formulaire n'incrémente pas ma base de données et ne se ferme pas

Si je ne mets pas "exit sub" , mon message qu'il manque des champs s'affiche, mais ma base de données est quand même incrémentée et j'ai mon message de fin qui apparait "Merci pour ces informations, elles ont été intégrées dans la base de données." et lorsque l'on appuie sur ok pour le fermer le formulaire se ferme.

Les champs obligatoire sont filière, personne référente, sujet Résultat consultable, Echantillon généré

Merci pour ton retour ^^

46classeur1.xlsm (25.39 Ko)

Bonjour à tous,

Et si tu mets Exit Sub avant End If ?

Tu veux sortir de la procédure si une des Textbox n'est pas remplie....

Cordialement,

Private Sub CommandButton1_Click()

'securité
If TextBox1.Value = "" Or TextBox2.Value = "" Or ComboBox1.Value = "" Or ComboBox2.Value = "" Or ComboBox3.Value = "" Then
MsgBox "Merci de remplir tout les champs", 64, "Information"
CommandButton1 = False
Else

'Alimentation de la base de données

Dim g As Integer

g = Range("A" & Rows.Count).End(xlUp).Row + 1
Range("A" & g).Value = ComboBox1.Value
Range("B" & g).Value = TextBox1.Value
Range("D" & g).Value = TextBox2.Value
Range("E" & g).Value = ComboBox2.Value
Range("F" & g).Value = ComboBox3.Value
Range("G" & g).Value = TextBox3.Value
Range("H" & g).Value = TextBox4.Value

'Fermeture du Formulaire
MsgBox ("Merci pour ces informations, elles ont été intégrées dans la base de données.")
Unload Me
End If
End Sub

Merci Beaucoup! ça marche du feu de Dieu!

C'est mon premier formulaire et je ne pensais pas, mais je trouve cela funny ce type de programmation ^^

Bonne journée,

Cordialement

Rechercher des sujets similaires à "formulaire alimenter base donnees"