récupérer une valeur listbox dans un listview

  • Initiateur de la discussion Initiateur de la discussion phoenix2006
  • Date de début Date de début

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 !

phoenix2006

XLDnaute Nouveau
Bonsoir,

J'utilise un fichier exemple récupéré sur ce site.
J'essai de modifier le code pour remplacer les textbox par des Listbox car le but du programme est de faciliter au mieux l'utilisation (utilisateurs novice en informatique)

J'ai donc remplacé les textbox par des listbox mais je n'arrive pas a récupérer les valeurs des listbox

Le debogger m'indique une erreur 1004 ici:
.Cells(Ligne, i) = Controls("ListBox" & i + 1)

Si quelqu'un à une idée.
D'avance, merci.
 

Pièces jointes

Dernière édition:
Re : récupérer une valeur listbox dans un listview

Bonjour Phoenix2006 et bienvenue 🙂,
D'abord, Ligne est = 0 donc erreur car pas de ligne 0 dans une feuille 😛...
Ensuite, les valeurs d'un ListBox ne se lisent pas comme des TextBox, puisqu'il faut que tu renvoie la (voir les en MultiSelect) valeur sélectionnée. Teste ce bout de code, je pense que tu comprendras mieux
Code:
Select Case ListBox1.ListIndex
Case -1
MsgBox "Pas de sélection"
Case Else
MsgBox ListBox1.List(ListBox1.ListIndex)
End Select
End Sub
Bon courage 😎
 
Re : récupérer une valeur listbox dans un listview

Tout d'abord merci pour votre réponse.
Je comprend ce que vous voulez dire.

Je sais récupérer la veleur d'une listbox, ce que je ne comprend pas c'est comment la récupérer dans ce programme.
exemple d'un bout de code ou je récupère les valeur des listbox
Code:
Sheets("cage").Range("B65536").End(xlUp).Offset(1, 0).Value = cage.Value
    Sheets("cage").Range("C65536").End(xlUp).Offset(1, 0).Value = proprietaire.Value
    If Vendre.Value = True Then
        Sheets("cage").Range("D65536").End(xlUp).Offset(1, 0).Value = 1
    End If
    If Vendre.Value = False Then
        Sheets("cage").Range("D65536").End(xlUp).Offset(1, 0).Value = 0
        End If

J'essai de repartir du programme trouvé sur ce site car il convient tout à fait à ce que je voulais faire (listview avec possibilité d'ajout/suppression/modification des données dans les lignes) mais je ne parviens pas à modifier le code pour remplacer les textbox par des listbox
 
Re : récupérer une valeur listbox dans un listview

Re 🙂,
Je comprend ce que vous voulez dire.
Je sais récupérer la veleur d'une listbox, ce que je ne comprend pas c'est comment la récupérer dans ce programme.
J'ai quelques doutes 😛...
je ne sais pas dans le lot lesquelles sont des ListBox
Code:
cage.Value
proprietaire.Value
Vendre.Value = True
Vendre.Value = False
Mais je viens de t'expliquer que Value ne fonctionne que si un choix est fait, sinon "Erreur". D'où il est plus prudent de tester, comme mon petit bout de code, si la sélection est faite.
Bonne soirée 😎
 
Re : récupérer une valeur listbox dans un listview

J' entends bien, mais alors comment faire pour adapter mon code?
Dois-je y intégrer ton code ?

Si oui comment faire ?

Si j'ai bien compris, je ne peux utiliser le controls, il faut tester la valeur de la listbox, mais comment récupérer cette valeur pour modifier la ligne dans la listview?
 
Re : récupérer une valeur listbox dans un listview

Re 🙂,
Si. Normalement
Code:
If Controls("ListBox" & i + 1).ListIndex <> -1
.Cells(Ligne, i) = Controls("ListBox" & i + 1).Value
End If
devrait fonctionner.
Bon courage 😎
 
Re : récupérer une valeur listbox dans un listview

Re 🙂,
Personnellement, je déteste essayer de reprendre le code d'un autre, je préfère l'analyser et le remettre à ma sauce 😉.
Une erreur de compilation sur le If... ne signale pas forcément une erreur à ce niveau là... En gros, tu as une erreur de fermeture, With...End With, If...End If, etc. Le tout c'est de la trouver 😱. La seule solution, si tu ne la détecte pas facilement, c'est de mettre des retraits mettant en valeur les ouvertures fermetures. Sachant aussi qu'un If...Then...Instruction ne nécessite pas de End If, au contraire, vu que ça mettra une erreur de compilation.
Bon courage 😎
 
- 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

Réponses
16
Affichages
1 K
Retour