Posez votre question Signaler

Excel VBA - Textbox à saisie conditionnée [Résolu]

Chriscam8786 19Messages postés 3 octobre 2007Date d'inscription - Dernière réponse le 26 févr. 2008 à 11:44
Bonjour,
Après avoir longtemps suivi en visiteur, j'ai décidé de m'inscrire, pour faciliter les échanges.
Une fois n'est pas coutume, je suis sur une petite programmation Excel VBA pour laquelle je rencontre quelques difficultés.
Je vais tenter de les décrire.
1- Créer des textbox à saisie conditionnée (ou dynamique), je m'explique :
Dans un userform nommé "Bienvenue", j'ai inséré 4 textbox nommées respectivement "Raison sociale", "SIREN", "Effectif" et "Département".
Je souhaiterai rendre ces zones actives pour les utilisateurs et faire en sorte que leur comportement agisse comme une recherche multicritères (plus on remplit les champs, plus fine est la recherche) lorsqu'on valide (grâce au commandbutton) les entrées saisies dans une ou plusieurs d'entre elles.
Est-ce possible?
D'avance merci,
Philippe
Lire la suite 

Excel VBA - Textbox à saisie conditionnée »

4 réponses
Réponse
+3
moins plus
up !
tommarianne - 25 févr. 2008 à 17:29
1 feuille excel - 5 colonnes (nom prenom adresse cp villes)
1 userform initialisée avec un commandbutton
5 textbox
1 listbox a 5 colonnes

Private Sub TextBox1_KeyUp(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)
Dim a As Long, b As Long
If TextBox1.Text = vbNullString Or KeyCode = 8 Or Len(TextBox1) < Sensibility Then Exit Sub
b = TextBox1.SelStart
For a = 0 To ListBox1.ListCount - 1
If ListBox1.List(a) Like TextBox1.Text & "*" Then
With TextBox1
.Text = ListBox1.List(a)
.SelStart = b
.SelLength = Len(.Text) - b
TextBox2.Text = ListBox1.List(a, 1)
TextBox3.Text = ListBox1.List(a, 2)
TextBox4.Text = ListBox1.List(a, 3)
TextBox5.Text = ListBox1.List(a, 4)
End With
Exit Sub
End If
Next a
End Sub

lorsque l' on tape une lettre dans le textbox nom celui ci est incrementé au fur a mesure des frappe
ainsi que les autres textbox
si 2 nom identique probleme non resolu pour le textbox prenom

si tu as trouver la suite je suis preneur
Ajouter un commentaire
Réponse
+3
moins plus
Bonjour,

Et merci de ton aide,

J'ai finalement trouvé une solution alternative hier dans la journée à ce problème que je me traîne depuis déjà quelques temps. La voici :

Private Sub VALIDER_Click()
IntLigne = ActiveSheet.Cells(2, 1).End(xlDown).Row + 1
Dim Lg As String
'La ligne dans laquelle sont ajoutées les valeurs est définie par la TextBox6
Lg = Sheets("Feuil1").Cells(65536, 1).End(xlUp).Row + 1
'texte des cases
Sheets("Feuil1").Cells(Lg, "A").Value = FicheVierge.TextBox1.Value
Sheets("Feuil1").Cells(Lg, "B").Value = FicheVierge.TextBox2.Value
Sheets("Feuil1").Cells(Lg, "C").Value = FicheVierge.TextBox3.Value
Sheets("Feuil1").Cells(Lg, "E").Value = FicheVierge.TextBox6.Value
Sheets("Feuil1").Cells(Lg, "F").Value = FicheVierge.TextBox7.Value
Sheets("Feuil1").Cells(Lg, "G").Value = FicheVierge.ComboBox1.Value
Sheets("Feuil1").Cells(Lg, "H").Value = FicheVierge.ComboBox2.Value
Sheets("Feuil1").Cells(Lg, "I").Value = FicheVierge.ComboBox4.Value
Sheets("Feuil1").Cells(Lg, "J").Value = FicheVierge.ComboBox5.Value
Sheets("Feuil1").Cells(Lg, "K").Value = FicheVierge.ComboBox6.Value
Sheets("Feuil1").Cells(Lg, "L").Value = FicheVierge.TextBox8.Value
Sheets("Feuil1").Cells(Lg, "M").Value = FicheVierge.ComboBox3.Value
Sheets("Feuil1").Cells(Lg, "N").Value = FicheVierge.TextBox9.Value
Sheets("Feuil1").Cells(Lg, "O").Value = FicheVierge.TextBox13.Value
FicheVierge.Hide
SuiviActivite.Show
End Sub

Ce petit schéma permet de renseigner automatiquement la base de données (feuille cachée de mon classeur masqué ; lol, je veux juste que les utilisateurs voient les boîtes de dialogue, ça fait plus "pro") lorsqu'on valide la saisie par le bouton "VALIDER".

J'espère qu'il t'aidera aussi,

Chris
Ajouter un commentaire
Réponse
+0
moins plus
up !
Ajouter un commentaire
Ce document intitulé « Excel VBA - Textbox à saisie conditionnée » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.
Dossier à la une
Passage au tout numérique : quel coût pour les particuliers ?