Question pour UserForm

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Arpette

XLDnaute Impliqué
Bonsoir à toutes et à tous,
j'ai l'habitude de travailler avec les USF, mais la je ne trouve pas la solution. Dans le code ci-dessous mon USF ouvre une ListeBox qui pointe sur la colonne A de la feuille fournisseur, pas de problème, sauf que ça me sert à pas grand chose. Il faudrait que la ListBox m'affiche les colonnes A et B de ma feuille fournisseur ( A donne la référence et B la description) car il est plus facile de se repérer avec la description. Je souhaiterais quand je choisi la ligne qui m'intéresse, je renvoie la valeur de A, c'est à dire la référence. Je ne sais pas si je suis bien explicite😕
Merci de votre aide.
@+
Code:
Option Explicit
Private Sub Valider_Click()
Application.ScreenUpdating = False
Dim dernLign As Long
With Sheets("Devis")
     dernLign = .Cells(Rows.Count, 1).End(xlUp).Row + 1
    .Cells(dernLign, 1).Value = Me.LMesfournisseurs.List(Me.LMesfournisseurs.ListIndex)
End With
FMesfournisseurs.Hide
Application.ScreenUpdating = True
        ' Stockage du résultat dans la cellule première cellule vide
End Sub
Private Sub UserForm_Initialize()
Application.ScreenUpdating = False
Dim i As Integer
Dim dernLign As Long
' Variable où l'on dit que l'on commence à proposer dans liste à partir de la 3ème ligne'
i = 3
With Worksheets("Fournisseurs")
    'Boucle dans le classeur sur feuille Fournisseurs 1ère colonne affiche la valeur tant que les cellules ne sont pas vides
    While Worksheets("Fournisseurs").Cells(i, 1).Value <> ""
        Me.LMesfournisseurs.AddItem (Worksheets("Fournisseurs").Cells(i, 1).Value)
        i = i + 1
    Wend
    Module1.SortListBox LMesfournisseurs, 0, 1, 1
End With
Application.ScreenUpdating = True
End Sub
Function FindIndexClasseur(ByVal NomClasseur) As Integer

End Function
 
Re : Question pour UserForm

Bonjour,

Ci dessous un exemple pour mettre 2 colonnes A et B de la feuil1 dans un listbox :

VB:
Private Sub UserForm_Initialize()
  ListBox1.ColumnCount = 2 '2 colonnes donc
  ListBox1.RowSource = "Feuil1!A1:B" & [B65000].End(xlUp).Row
End Sub
 
Re : Question pour UserForm

Bonjour Arpette
Bonjour Sofmama

En partant de ton code

VB:
Option Explicit

Private Sub Valider_Click()
Dim dernLign As Long
  Application.ScreenUpdating = False
  With Sheets("Devis")
     dernLign = .Cells(Rows.Count, 1).End(xlUp).Row + 1
    .Cells(dernLign, 1).Value = Me.LMesfournisseurs.List(Me.LMesfournisseurs.ListIndex)
  End With
  FMesfournisseurs.Hide
'  Application.ScreenUpdating = True
  ' Stockage du résultat dans la cellule première cellule vide
End Sub

Private Sub UserForm_Initialize()
'Application.ScreenUpdating = False
Dim I As Long
Dim Ws As Worksheet

Set Ws = Sheets("Fournisseurs")

'Dim dernLign As Long
' Variable où l'on dit que l'on commence à proposer dans liste à partir de la 3ème ligne'
  I = 3
  
    'Boucle dans le classeur sur feuille Fournisseurs 1ère colonne affiche la valeur tant que les cellules ne sont pas vides
    With Me.LMesfournisseurs
      .ColumnCount = 2
      .ColumnWidths = "120;200"
      While Ws.Cells(I, "A").Value <> ""
        .AddItem Ws.Cells(I, "A").Value
        .List(.ListCount - 1, 1) = Ws.Cells(I, "B")
        I = I + 1
      Wend
  End With
'    Module1.SortListBox LMesfournisseurs, 0, 1, 1
'Application.ScreenUpdating = True
End Sub
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

  • Question Question
Microsoft 365 worksheet_change
Réponses
29
Affichages
508
Réponses
4
Affichages
200
Réponses
10
Affichages
290
Réponses
2
Affichages
210
  • Question Question
Microsoft 365 affichage userform
Réponses
4
Affichages
362
Retour