none
Excel : listbox.Textcolumn ne fonctionne pas dans multi-colonnes RRS feed

  • Question

  • Bonjour,

    J'utilise une listbox avec 3 colonnes et je ne peux pas sélectionner les 2 premières colonnes en changeant la valeur de textcolumn en 1 ou 2. Texcolumn=3 marche bien.

    Je suis en version excel 2013 32 bits.

    Cordialement

    Richard

    jeudi 13 novembre 2014 08:24

Toutes les réponses

  • Bonjour,

    Il doit y avoir quelque chose au niveau de ta listbox. Je viens de faire un test : TextColum = 2 fonctionne correctement. Est-ce que tu peux mettre à disposiiton un lien sur ton classeur - sans données confidentielles ? Dans le cas contraire je peux mettre un exemple à ta disposition mais comme celui-ci fonctionne, ça a moins d'intérêt.

    Cordialement.

    Daniel


    • Modifié Danielco jeudi 13 novembre 2014 08:52
    jeudi 13 novembre 2014 08:52
  • Bonjour Danielco,

    voici le lien avec mon fichier.

    https://onedrive.live.com/redir?resid=95E01F49BC0CAE3D!3048&authkey=!AOzn9BKtlqnjtRg&ithint=file%2cxlsm

    c'est avec UserformNom. listboxnom que j'ai le pb.

    Merci

    Cordialement

    Richard

    jeudi 13 novembre 2014 09:55
  • Est-ce que tu peux me dire comment afficher cet userform ?

    Daniel

    jeudi 13 novembre 2014 14:56
  • bonjour,

    je t'envoie le lien vers un fichier (version très simplifiée) qu'il faut lancer par la macro "nonauto_open" dans le module1.

    en utilisant les options je change la valeur de la textcolumn. la colonne 3 cela marche bien pour les autres non.

    il y a quelques jours lorsque j'ai écrit cette macro cela marchait bien  et maintenant non.

    J'ai essayé sur un autre pc et c'est pareil.

    https://onedrive.live.com/redir?resid=95E01F49BC0CAE3D!3050&authkey=!AKMSBOzdwMkkziM&ithint=file%2cxlsm

    Merci

    Cordialement

    Richard

    vendredi 14 novembre 2014 08:49
  • Bonjour,

    Pour moi, cela fonctionne normalement. Ajoute cette maccro dans le module du userform et, quand il est affiché, clique sur le userform :

    Private Sub UserForm_Click()
        With Me.ListBoxNom
            For i = 1 To 3
                .TextColumn = i
                MsgBox "TextColummn : " & .TextColumn & vbCrLf & _
                "Text : " & .Text
            Next i
        End With
    End Sub
    

    Cordialement.

    Daniel

    vendredi 14 novembre 2014 09:30
  • Mon problème n'est pas celui-ci. c'est la façon de sélectionner la ligne qu'est le Pb. 

    Je souhaite faire une "Matchentry complete" et donc en fonction de la colonne, je tape un nom ou un nombre et je crois avoir lu que la comparaison se fait  sur la colonne indiquée dans "textcolumn". cela marche bien avec le nom colonne 3 mais pas avec les autres.


    Cordialement

    Richard

    vendredi 14 novembre 2014 12:27
  • J'ai contourné le problème en mettant la première au format texte avec le même nombre de caractères partout (2). J'ai modifié la ligne :

    BlocAdr(i, 1) = Format(Worksheets("BDD").Cells(i + 1, ColCodePrec), "00")
    
    au lieu de :
    
    BlocAdr(i, 1) = Worksheets("BDD").Cells(i + 1, ColCodePrec)

    Est-ce que c'est acceptable pour toi ? Si oui, fais de même pour la deuxième colonne.

    Daniel

    vendredi 14 novembre 2014 14:44
  • Parfait, c'est OK.

    j'ai pu mettre la formule

    BlocAdr(i, 1) = Format(Worksheets("BDD").Cells(i + 1, ColCodePrec), "0")

    pour les 2 premières colonnes. c'est super Merci beaucoup.

    Bonne soirée

    Richard

    vendredi 14 novembre 2014 17:18
  • Bonjour Daniel,

    J'ai un autre petit souci, le programme que j'ai marche bien mais lorsque je le lance sur un autre Pc windows 8.1 il me signale qu'il manque un contrôle en fait j'ai ajouté un contrôle supplémentaire "Listview". sur mon PC Windows8 je n'ai pas accès au contrôles supplémentaires? pourquoi ?

    Si tu peux m'aider, merci

    Cordialement

    Richard

    jeudi 27 novembre 2014 18:57
  • Bonsoir,

    Dans les références, il faut cocher la référence Microsoft Windows Common Controls 6.0 (SP2). Ensuite, si nécessaire, il faut inscrire le fichier MSCOMCTL.OCX dans le . Regarde :

    http://www.excelabo.net/excel/listview_mscomctl.ocx

    Cordialement.

    Daniel


    jeudi 27 novembre 2014 21:15
  • Bonjour Daniel,

    j'ai développé sous windows 7 32 et je veux fonctionner sous windows 8.1 64.

    avec excel 2013 en 64 bits.

    Sous windows 8 dans références je n'ai pas Windows Common Controls 6.0 (SP2) je vais le chercher et sous system32 j'ai bien mxcomctl.ocx soit Windows Common Controls 6.0 (SP6) je n'ai tjrs pas de listview.

    je vais télécharger un mscomctl.ocx pour syswwow64 je le copie, et j'utilise la procédure Regsvr32 que tu m'a indiqué.

    ma version est alors Windows Common Controls 6.0 (SP4) et elle est bien dans syswow64.

    cela ne marche tjrs pas. dois-je réinstaller excel en version 32 pour que cela marche?

    cordialement

    Richard

    vendredi 28 novembre 2014 07:53
  • Ah, désolé, ces contrôles ne fonctionnent pas avec Office 64 bits. Regarde les incompatibilités à la page :

    http://office.microsoft.com/fr-fr/excel-help/choisir-la-version-32-bits-ou-64-bits-de-microsoft-office-HA010369476.aspx

    Daniel

    vendredi 28 novembre 2014 09:06