Affichage de donnée dans txtbox sur click listbox
Bonjour,
Je tente, via une listbox chargée par les données d'une feuille excel ("DATA"), d'afficher les données dans des textbox/optionbutton/combox quand je click sur une ligne de cette listbox.
J'initialise le remplissage de la listbox4 de cette manière (j'ai repris un code que j'essaye d'adapté au mieux)
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37
| Dim WB As Workbook
Dim S As Worksheet
Dim R As Range
Dim var As Variant
Dim LigneFin&
Dim ColonneFin&
'### Où se trouvent les données ? ###
Set WB = ActiveWorkbook 'dans le classeur actif (à adapter)
Set S = WB.Sheets("DATA") 'dans la feuille "Data" (à adapter)
'--- on suppose que les données commencent en A1
'--- et que toutes les cellules de la colonne A
'--- ainsi que toutes les cellules de la ligne 1
'--- sont renseignées
LigneFin& = S.[A2].End(xlDown).Row 'dernère ligne
ColonneFin& = S.[A2].End(xlToRight).Column 'dernière colonne
'--- on affecte la plage de données à une variable Range
Set R = S.Range(S.Cells(1, 3), S.Cells(LigneFin&, ColonneFin&))
'--- on monte tout le Range dans un Variant qui va se comporter comme un tableau bidimensionné
var = R 'toutes les données sont dans le Variant
'### REMARQUE ###
'Si vous avez des calculs, faites les à partir et dans le Variant
'### ListBox ###
'--- nombre de colonnes de la ListBox = nombre de colonnes du Variant
With ListBox1
.ColumnCount = UBound(var, 2) ',2 est la dimension des colonnes
'--- on monte d'un seul coup le variant dans la ListBox
.ColumnWidths = "70 pt;45 pt;45 pt"
.List = var
.ColumnHeads = True
.RowSource = "A2:C65000"
End With |
À savoir que j'ai 15 colonne avec des titres qui sont reprise par la fonction .ColumnHeads = True dans le listbox4.
J'ai rencontré un souçis d'affichage que j'ai pu résoudre en affichant uniquement les 3 premères colonnes (seul celles-ci me sont nécessaire pour un aperçu rapide).
Ma question: Est-il possible d'afficher l'entièreté des données dans les champs textbox/optionbutton/combox en cliquant sur une ligne de cette listbox4?
J'ai suivis plusieurs post à ce sujet mais je ne parviens pas à l'adapté sur le mien ..
Voici comment j'encode mes donnée sur la plage excel :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
| Sub cmdConfirm_Click()
Dim Ctrl As Control
Dim Ctrl1 As Control
Sheets("DATA").Activate
'Positionnement dans la table
[A65000].End(xlUp).Offset(1, 0).Select
'Transfert des données formulaire dans BD
'frame priorité
ActiveCell.Value = Application.Proper(Me.NumCall)
For Each Ctrl In FramePriorite.Controls
If Ctrl.Object.Value = True Then
ActiveCell.Offset(0, 1).Value = Ctrl.Object.Caption
Exit For
End If
Next Ctrl
ActiveCell.Offset(0, 2).Value = Me.TextBoxDateProposee
ActiveCell.Offset(0, 3).Value = "CREE"
ActiveCell.Offset(0, 4).Value = Me.ActionAgent
ActiveCell.Offset(0, 5).Value = Me.ComboTypeCall
ActiveCell.Offset(0, 6).Value = Me.ResaCmde
ActiveCell.Offset(0, 7).Value = Me.Outbound
ActiveCell.Offset(0, 8).Value = Me.Article
ActiveCell.Offset(0, 9).Value = Me.Lot
ActiveCell.Offset(0, 10).Value = Me.Objet
ActiveCell.Offset(0, 11).Value = Me.TextBoxDateDuJour
End Sub |
Merci pour le coup de pouce :D
Damien