VBA comboxbox vers multiples textbox
Fermé
ginger
-
27 déc. 2007 à 14:40
Polux31 Messages postés 6917 Date d'inscription mardi 25 septembre 2007 Statut Membre Dernière intervention 1 novembre 2016 - 28 déc. 2007 à 02:31
Polux31 Messages postés 6917 Date d'inscription mardi 25 septembre 2007 Statut Membre Dernière intervention 1 novembre 2016 - 28 déc. 2007 à 02:31
A voir également:
- VBA comboxbox vers multiples textbox
- Windows 7 vers windows 10 - Accueil - Mise à jour
- Clavier qwerty vers azerty - Guide
- Votre envoi est réacheminé vers son site de distribution - Forum Consommation & Internet
- Vba ouvrir un fichier excel avec chemin ✓ - Forum VB / VBA
- Vers quelle adresse web renvoie ce lien - Guide
3 réponses
icomicar
Messages postés
76
Date d'inscription
lundi 26 juin 2006
Statut
Membre
Dernière intervention
28 janvier 2015
2
27 déc. 2007 à 15:04
27 déc. 2007 à 15:04
salut :
d'abord tu ouvre ta bse tu te place sur la table en question et tu selectionne l'enregistrement
par exemple avec une listboxe
Set rs = db.OpenRecordset("select * from la table where nom='" + Trim(List1.Text) + "'")
s'il n'ya pas d'enregistrement un message et arrete la recherche
if rs.eof then msgbox(" blabla"):exit sub
sinon affiche le resultat
pour eviter les messages d'erreur en cas de valeur nul(on error resume next)
On Error Resume Next
Text1(0) = rs("nom")
Text1(1) = rs("preno")
Text1(2) = rs("age")
Voila ! je dis pas que c'est la meilleure facon ,vu que je suis amateur mais c'est ce que moi je fais pour programmé une recherche et afficher son resultat.bon courage
d'abord tu ouvre ta bse tu te place sur la table en question et tu selectionne l'enregistrement
par exemple avec une listboxe
Set rs = db.OpenRecordset("select * from la table where nom='" + Trim(List1.Text) + "'")
s'il n'ya pas d'enregistrement un message et arrete la recherche
if rs.eof then msgbox(" blabla"):exit sub
sinon affiche le resultat
pour eviter les messages d'erreur en cas de valeur nul(on error resume next)
On Error Resume Next
Text1(0) = rs("nom")
Text1(1) = rs("preno")
Text1(2) = rs("age")
Voila ! je dis pas que c'est la meilleure facon ,vu que je suis amateur mais c'est ce que moi je fais pour programmé une recherche et afficher son resultat.bon courage
Polux31
Messages postés
6917
Date d'inscription
mardi 25 septembre 2007
Statut
Membre
Dernière intervention
1 novembre 2016
1 204
28 déc. 2007 à 02:31
28 déc. 2007 à 02:31
Bonjour,
Effectivement ça ne peut pas marcher, ce qu'a donné icomicar marche pour une base de données, mais EXCEL N'EST PAS UNE BASE DE DONNEES ...
Pour ton cas voilà ce que je propose :
Sub Search()
Dim strCbo As String
Dim i As Long
With Worksheets(1)
'On suppose que la colonne A contient les noms du combobox, la colonne B les prénoms, le colonne C les âges et que la ligne 1 contient le libellé des colonnes
strCbo = cboNom.Text
i = 2
While .Range("A" & i).Value <> ""
If .Range("A" & i).Value = strCbo Then
UserForm1.TxtNom.text = .Range("A" & i).Value
UserForm1.TxtPrenom.text = .Range("B" & i).Value
UserForm1.TxtAge.text = .Range("C" & i).Value
End If
i = i + 1
Wend
End Sub
bon courage
;o)
Polux
Effectivement ça ne peut pas marcher, ce qu'a donné icomicar marche pour une base de données, mais EXCEL N'EST PAS UNE BASE DE DONNEES ...
Pour ton cas voilà ce que je propose :
Sub Search()
Dim strCbo As String
Dim i As Long
With Worksheets(1)
'On suppose que la colonne A contient les noms du combobox, la colonne B les prénoms, le colonne C les âges et que la ligne 1 contient le libellé des colonnes
strCbo = cboNom.Text
i = 2
While .Range("A" & i).Value <> ""
If .Range("A" & i).Value = strCbo Then
UserForm1.TxtNom.text = .Range("A" & i).Value
UserForm1.TxtPrenom.text = .Range("B" & i).Value
UserForm1.TxtAge.text = .Range("C" & i).Value
End If
i = i + 1
Wend
End Sub
bon courage
;o)
Polux