pb sur un userform

djtotti69

XLDnaute Nouveau
Bjr,

je débute sur vb et j'ai un soucis sur mon userform.
Quand je clique sur mon bouton "ajouter un client" un userform s'ouvre avec divers champs à remplir.Les informations rentrées remplissent une 2e feuille du classeur. Tous les champs doivent être remplis pour validation. il faudrait qu'une fois les champs correctement remplis et uniquement dans ce cas là que les champs reviennent à vide et que ma 2e feuille crée une nouvelle ligne au dessus de la dernière ligne remplie. Car le soucis que j'ai dans mon code c'est qu'il ne tient pas compte du fait que les champs soit tous remplis pour insérer la ligne et vider les champs

J'espère que vous avez compris ma question

je vous met mon code:

Private Sub valider_Click()

'nom'
If Me.nom.Value = "" Then
MsgBox ("Entrer un nom SVP")
Else
Y = Worksheets("Clients").Cells(8, 1)
X = Me.nom.Value
Worksheets("Clients").Cells(8, 1).Value = Y + X
End If

'prenom'
If Me.prenom.Value = "" Then
MsgBox ("Entrer un prénom SVP")
Else
Y = Worksheets("Clients").Cells(8, 2)
X = Me.prenom.Value
Worksheets("Clients").Cells(8, 2).Value = Y + X
End If

'adresse'
If Me.adresse.Value = "" Then
MsgBox ("Entrer une adresse SVP")
Else
Y = Worksheets("Clients").Cells(8, 3)
X = Me.adresse.Value
Worksheets("Clients").Cells(8, 3).Value = Y + X
End If

'code postal'
If Me.code.Value = "" Then
MsgBox ("Entrer un code postal SVP")
Else
Y = Worksheets("Clients").Cells(8, 4)
X = Me.code.Value
Worksheets("Clients").Cells(8, 4).Value = Y + X
End If

'ville'
If Me.ville.Value = "" Then
MsgBox ("Entrer une ville SVP")
Else
Y = Worksheets("Clients").Cells(8, 5)
X = Me.ville.Value
Worksheets("Clients").Cells(8, 5).Value = Y + X
End If

'telephone'
If Me.tel.Value = "" Then
MsgBox ("Entrer un numéro de téléphone SVP")
Else
Y = Worksheets("Clients").Cells(8, 6)
X = Me.tel.Value
Worksheets("Clients").Cells(8, 6).Value = Y + X
End If

'demande'
If Me.demande.Value = "" Then
MsgBox ("Entrer l'objet de la demande SVP")
Else
Y = Worksheets("Clients").Cells(8, 7)
X = Me.demande.Value
Worksheets("Clients").Cells(8, 7).Value = Y + X
End If

'devis'
If Me.Devis.Value = "" Then
MsgBox ("Préciser si un devis a été établi ou pas SVP")
Else
Y = Worksheets("Clients").Cells(8, 8)
X = Me.Devis.Value
Worksheets("Clients").Cells(8, 8).Value = Y + X
End If

Worksheets("Clients").Rows("8").Insert

Dim c As Control
For Each c In Me.Controls
Select Case TypeName(c)
Case "TextBox"
c.Value = ""
End Select
Next c

End Sub



Merci de votre aide
 

JNP

XLDnaute Barbatruc
Re : pb sur un userform

Bonsoir Djtotti69 :),
En mettant d'abord les tests, puis le remplissage, ça devrait le faire
Code:
Private Sub valider_Click()
'nom'
If Me.nom.Value = "" Then
MsgBox ("Entrer un nom SVP")
Exit Sub
End If
'prenom'
If Me.prenom.Value = "" Then
MsgBox ("Entrer un prénom SVP")
Exit Sub
End If
'...
Y = Worksheets("Clients").Cells(8, 1)
X = Me.nom.Value
Worksheets("Clients").Cells(8, 1).Value = Y + X
Y = Worksheets("Clients").Cells(8, 2)
X = Me.prenom.Value
Worksheets("Clients").Cells(8, 2).Value = Y + X
'...
Bonne soirée :cool:
 

djtotti69

XLDnaute Nouveau
Re : pb sur un userform

Merci beaucoup de ton aide ! ça marche nickel !
maintenant je m'attaque au bouton de recherche !
et en + j'ai compris la logique du pourquoi mettre les tests puis le remplissage !

j'y étais presque et c'est une petite satisfaction personnelle du coup :)
 

Membres actuellement en ligne

Statistiques des forums

Discussions
312 105
Messages
2 085 350
Membres
102 870
dernier inscrit
Armisa