Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

XL 2010 Textbox

nabilexcel2007

XLDnaute Occasionnel
Bonjour
j'aimerai mettre des texbox en m'affichant le contenu de cellule a la selection de ma Listbox
par ex:
quand je selectionne ma ligne sur listbox les textbox s'affiche
Merci
 

Pièces jointes

  • VBA.xlsm
    279.8 KB · Affichages: 33

job75

XLDnaute Barbatruc
Bonjour nabilexcel2007,

Voyez le fichier joint où j'ai ajouté les 3 TextBoxes TextBox2, TextBox3,TextBox4.

Leur propriété Visible est à False, elles sont donc masquées à l'ouverture de l'UserForm.

Ensuite elles s'affichent et se masquent par ces 2 macros :
VB:
Private Sub ListBox1_Click()
Dim i As Byte
For i = 2 To 4 'à adapter
    Me("TextBox" & i).Visible = True
Next
End Sub

Private Sub TextBox1_Enter()
Dim i As Byte
For i = 2 To 4 'à adapter
    Me("TextBox" & i).Visible = False
Next
End Sub
A+
 

Pièces jointes

  • VBA(1).xlsm
    257.5 KB · Affichages: 11

nabilexcel2007

XLDnaute Occasionnel
Est ce que je peux afficher les textbox que je veux par rapport a mon tableau feuille BD ?
d'apres ce que j'ai compris le textbox prend l'affichage de la listbox et moi je peux pas afficher tout le tableau sur ma listbox , j'ai 20 colonnes.
desole au debut ma question n'etait pas clair
 

job75

XLDnaute Barbatruc
Est ce que je peux afficher les textbox que je veux par rapport a mon tableau feuille BD ?
Oui, voyez ce fichier (3) et la macro :
VB:
Private Sub ListBox1_Click()
Dim lig As Variant, i As Byte
With [Tab_BD] 'tableau structuré
    lig = Application.Match(Trim(ListBox1), .Columns(1), 0)
    For i = 2 To 4 'à adapter
        If IsError(lig) Then Me("TextBox" & i) = "" Else Me("TextBox" & i) = .Cells(lig, i - 1)
        Me("TextBox" & i).Visible = True
    Next
End With
End Sub
Les dossiers en colonne A servent de références, ce sera parfait s'il n'y a pas de doublon.
 

Pièces jointes

  • VBA(3).xlsm
    261.6 KB · Affichages: 9

job75

XLDnaute Barbatruc
Bonjour nabilexcel2007, le forum,

J'attire votre attention sur une malfaçon due à votre macro UserForm_Initialize.

Quand ListBox1 contient des valeurs filtrées par TextBox1 :

- les valeurs de la 1ère colonne (N° Dossier) se terminent par un espace

- toutes les valeurs des 7 autres colonnes commencent et se terminent par un espace.

Ce n'est pas normal, il faudra y remédier mais ce n'est plus le sujet de ce fil.

A+
 

job75

XLDnaute Barbatruc
Bon il est très simple d'éviter les espaces, utiliser ce fichier (4).

Il suffisait de remplacer choix(i) = choix(i) & bd(i, k) & " * "

par choix(i) = choix(i) & bd(i, k) & "*" dans UserForm_Initialize.

Du coup le Trim dans ListBox1_Click n'est plus nécessaire.
 

Pièces jointes

  • VBA(4).xlsm
    262 KB · Affichages: 8

job75

XLDnaute Barbatruc
Bonjour nabilex2007,
je fait comment pour afficher le textbox que je veux moi ? par ex:
je veux affiche N° dossier col A + empl col C je veux pas afficher Annexe col B.
Lister les numéros des colonnes à récupérer dans un Array avec ce code, fichier (5) :
VB:
Private Sub ListBox1_Click()
Dim col, lig As Variant, i As Byte
col = Array(1, 3) 'numéros des colonnes à récupérer
With [Tab_BD] 'tableau structuré
    lig = Application.Match(ListBox1, .Columns(1), 0)
    For i = 2 To UBound(col) + 2
        If IsError(lig) Then Me("TextBox" & i) = "" Else Me("TextBox" & i) = .Cells(lig, col(i - 2))
        Me("TextBox" & i).Visible = True
    Next
End With
End Sub
A+
 

Pièces jointes

  • VBA(5).xlsm
    262.1 KB · Affichages: 7

nabilexcel2007

XLDnaute Occasionnel
j'ai mis:
Private Sub ListBox1_Click()
Dim col, lig As Variant, i As Byte
col = Array(1, 2, 3, 4, 5, 6, 9, 13, 14, 15, 16, 18, 19) 'numéros des colonnes à récupérer
With [Tab_BD] 'tableau structuré
lig = Application.Match(ListBox1, .Columns(1), 0)
For i = 2 To UBound(col) + 2
If IsError(lig) Then Me("TextBox" & i) = "" Else Me("TextBox" & i) = .Cells(lig, col(i - 2))
Me("TextBox" & i).Visible = True
Next
End With
End Sub

erreur sur la ligne couleur jaune : Me("TextBox" & i) = .Cells(lig, col(i - 2))
 

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…