Création d'un Userform

serval

XLDnaute Occasionnel
Bonjour,

J'ai un petit tableau sous excel et je cherche le moyen de faire un masque qui permettrait de saisir les données et ensuite de les inserrer dans mon talbeau.

Il semblerait qu'il faille passer par un userform.

J'ai fait un userform sous vb avec les différentes données a inserer dans le tableau.
est-ce que vous pourriez me donner un petit coup de main pour la partie VB? (histoire de voir comment ca fonctionne et ensiute j'essairai de creer d'autres zone de saisie)

Merci de votre aide,
FAb

PS: je vous joints le fichier sur lequel j'ai commendé a travailer
PS2: est-il possible d'avoir une incrémentation de la zone "exp-10-0X" en fonction du derniers enregistrement?
 

Pièces jointes

  • test userform.xls
    23.5 KB · Affichages: 79
  • test userform.xls
    23.5 KB · Affichages: 77
  • test userform.xls
    23.5 KB · Affichages: 79

serval

XLDnaute Occasionnel
Re : Création d'un Userform

bonjour phlaurent55,

merci pour le code VB de l'userform.

J'ai regardé et essayé de comprendre ce que tu avais mis dans le code VB et je pense avoir compris :) (à verifier avec les nouvelles données que je vais rajouter dans l'userform ;) )

Juste 1 petite question pour le moment:
j'ai vu qu'il etait possible de mettre des listes déroulantes. comment puis-je faire pour que les villes soient choisies dans une liste déroulante? (liste des villes défini dans la page "liste")

Merci bcq!!!!!
FAb
 

Robert

XLDnaute Barbatruc
Repose en paix
Re : Création d'un Userform

Bonjour Serval, Philippe, bonjour lem forum,

il y a plusieurs méthodes pour alimenter une Combobox. Depuis qu'un certain ours m'en a rabaché une que je peinais à utiliser, je n'utilise partiquement plus que celle-ci . L'alimentation se fait à l'initailisation de l'Userform, appliqué à ton cas ça donne :
Code:
Private Sub UserForm_Initialize()
With Sheets("listes")
    Me.ComboBox1.List = .Range("B3:B" & .Range("B65536").End(xlUp).Row).Value
End With
End Sub
 

serval

XLDnaute Occasionnel
Re : Création d'un Userform

Bonjour,

J'ai continué a agrémenté mon UF et bien évidemment, des questions sont aparues... ;)

est-il possible, dans une textbox, de définir un format de saisie "date": jj/mm/aaaa (avec les "/" qui s'inserrent automatiquement)?
Est-il possible de définir un format de saisie du type XXX-XXX-XX ?
Je cherche le moyen de fermer mon UF une fois que j'ai cliqué sur le bouton "valider". (userform1.close ne fonctionne pas et userform.hide n'efface pas les valeurs saisies lors d'une précédente utilisation).

Voila mes questions du moment :)
Merci de votre aide,
FAb
 

phlaurent55

Nous a quittés en 2020
Repose en paix
Re : Création d'un Userform

Re,
Je cherche le moyen de fermer mon UF une fois que j'ai cliqué sur le bouton "valider". (userform1.close ne fonctionne pas et userform.hide n'efface pas les valeurs saisies lors d'une précédente utilisation).

le code ci-dessous pour effacer les valeurs que tu souhaite
Code:
Private Sub CommandButton2_Click()
' effacer le contenu de TBox1
UserForm1.TextBox1.Value = ""
' effacer le contenu de TBox2
UserForm1.TextBox2.Value = ""
' de même pour tous les éléménts de l'usf que tu veux effacer
' avant de "faire disparaître"   l'USF
UserForm1.Hide
End Sub

à+
Philippe
.
 

phlaurent55

Nous a quittés en 2020
Repose en paix
Re : Création d'un Userform

Re,

un petit plus ( mais je peux encore faire plus) pour le code du bouton "Valider"
Code:
Private Sub CommandButton1_Click()
' une sécurité supplémentaire
' les lignes suivantes pour tester si
' les différents TextBox contiennent quelque chose
' avant validation
If TextBox1.Value = "" Or TextBox2.Value = "" Or TextBox3.Value = "" Then
' ici tu peux éventuellement faire apparaître un message
'  ---> "Veuillez remplir tous les TBox"
Exit Sub
End If
derligne = Range("B65535").End(xlUp).Row + 1
Range("C" & derligne).Value = TextBox1.Value
Range("D" & derligne).Value = TextBox2.Value
Range("E" & derligne).Value = TextBox3.Value
'.....................
'.....................
' et juste avant End Sub, tu effaces le contenu
' en vue d'une nouvelle saisie
TextBox1.Value = ""
TextBox2.Value = ""
TextBox3.Value = ""
End Sub
à+
Philippe
.
 

serval

XLDnaute Occasionnel
Re : Création d'un Userform

bonjour,

Je viens juste de trouver le temps de me remettre à travailler sur mon Userform :(
Merci pour tous ces commentaires!!! ca m'a etait tres utile :)

Bien evidemment, j'ai une nouvelle question pour vous :)
maintenant que j'ai mon UF pour saisir les données dans mon tableau, est-il possbile de le ré-utiliser pour modifier des elements du tableau?

En gros, si je rentre un 'ID" dans une textbox, il me remet sur mon UF toutes les données correspondantes, que je peux modifier et réenregistrer dans mon tableau?
est-ce possible de le faire avec le meme UF ou faut-il que j'en fasse un nouveau?

merci de votre aide,
FAb
 

Discussions similaires

Statistiques des forums

Discussions
312 504
Messages
2 089 090
Membres
104 027
dernier inscrit
Luc ECODIS