IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VBA Access Discussion :

Transfert de listbox vers Excel


Sujet :

VBA Access

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    95
    Détails du profil
    Informations personnelles :
    Localisation : France, Sarthe (Pays de la Loire)

    Informations forums :
    Inscription : Avril 2008
    Messages : 95
    Par défaut Transfert de listbox vers Excel
    Ce sujet a été mis dans VBA Excel, mais sans réponse là bas, je remets ici mon message :

    Citation Envoyé par Secco Voir le message
    Bonjour,

    je découvre les listebox et je galère...

    En fait, je recupère des données dans ma listbox (qui est dans un formulaire ACCESS), ça, ça ne pose pas de problème, il me les affiche dans mon formulaire (ACCESS). Cependant, je n'arrive pas à la transférer sur une feuille Excel.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    ...
    ListeTest.RowSource = ""
    For k = 0 To 29
        ListeTest.AddItem tabClassification(k)
    Next k
    ...
    Dans un premier temps j'ai essayé avec ce que j'ai trouvé sur http://silkyroad.developpez.com/VBA/ControlesUserForm/, j'ai donc fait
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
     
    Dim wbTemp As Excel.Workbook
    Dim feuil As Worksheet
    Dim i As Long
     
    Set wbkTp = RecupClasseur 'fct qui recupere le classeur actif
     
    Set feuil = wbkTp.ActiveSheet
     
    With ListeTest
            feuil.Range(Cells(1, 1), Cells(.ListCount, 1)) = .List
        End With
    Mais il m'affiche le message d'erreur :
    "Erreur de compilation :
    Membre de méthode ou de données introuvables"
    Tout en me surlignant la partie ".List"

    Du coup, ne comprenant pas trop le code que j'avais "betement" collé de la page internet, j'ai tenté ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    flM.Cells(25, 1) = ListeTest.List(1)
    Mais rien n'y change, j'ai toujours le meme message d'erreur, et il me surligne toujours le .List.

    Malheureusement, je ne trouve nulpart de la doc assez précise sur les listBox pour comprendre ce que c'est ce .List (qui d'ailleurs n'apparait pas quand je fais ListeTest. [ctrl + espace ] )

    J'espère que quelqu'un pourra m'aider,

    je vous remercie d'avance,

    Secco
    Je précise également, que par la suite j'ai essayé une msgbox qui m'affiche le ListeTest.ListCount et il n'y a pas de problème ça m'affiche 30 et que le ListeTest.ListIndex ça m'affiche -1 (si ça peut parler à quelqu'un, car moi ça me dit rien du tout..)

    J'espère que quelqu'un saura m'aider

    Secco

  2. #2
    Expert confirmé
    Avatar de LedZeppII
    Homme Profil pro
    Maintenance données produits
    Inscrit en
    Décembre 2005
    Messages
    4 485
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Maintenance données produits
    Secteur : Distribution

    Informations forums :
    Inscription : Décembre 2005
    Messages : 4 485
    Par défaut
    Bonsoir,

    Dans Excel la listbox vient de la bibliothèque "Microsoft Forms 2.0".
    Dans Access elle vient de "Microsoft Access x.x Object Library"
    Il y a donc des différences.
    Je ne crois pas que l'on puisse extraire en une seule fois toutes les données d'un zone de liste Access.
    En revanche avec une boucle et le membre ItemData de la zone de liste Access :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    For i = 0 To Me.ListeTest.ListCount - 1
        feuil.Cells(1 + i, 1) = Me.ListeTest.ItemData(i)
    Next
    A+

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    95
    Détails du profil
    Informations personnelles :
    Localisation : France, Sarthe (Pays de la Loire)

    Informations forums :
    Inscription : Avril 2008
    Messages : 95
    Par défaut
    Mille mercis LedZeppII !!

    Je n'ai pas bien compris ce que c'était le Me. mais bon.. au moins ça marche et ça c'est génial ! Je vais pouvoir enlever mes centaines de zones de texte que j'avais fini par créer...

    Bon si jamais quelqu'un passe par là et peut m'expliquer le pourquoi du comment ça serait bien, mais bon, au moins je suis débloquée :-)

    A bientôt pour de nouvelles aventures (moi pessimiste ?)

    Secco

  4. #4
    Expert confirmé
    Avatar de LedZeppII
    Homme Profil pro
    Maintenance données produits
    Inscrit en
    Décembre 2005
    Messages
    4 485
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Maintenance données produits
    Secteur : Distribution

    Informations forums :
    Inscription : Décembre 2005
    Messages : 4 485
    Par défaut
    Bonjour,

    Dans un module de code d'un formulaire, Me fait référence au formulaire en tant qu'objet.
    Si tu as un formulaire Formulaire1, le module de code de ce formulaire est un module de classe ayant pour nom Form_Formulaire1 (le nom de la classe).
    Me est un objet de de type Form_Formulaire1.

    C'est pratique à utiliser quand on écrit du code car en tapant Me suivit de point(.) l'intellisence propose tous les membres du formulaire.
    La zone de liste est un de ces membres.
    Si on omet de mettre Me cela fonctionne quand même.

    A+

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Transfert données listbox vers excel
    Par biquet52 dans le forum IHM
    Réponses: 3
    Dernier message: 18/09/2008, 12h03
  2. Transfert AS400 V5R2 vers EXCEL 2007
    Par dblue_ln dans le forum AS/400
    Réponses: 11
    Dernier message: 22/05/2008, 16h17
  3. VBA Excel : Transfert listbox vers Excel
    Par Secco dans le forum Macros et VBA Excel
    Réponses: 17
    Dernier message: 27/04/2008, 23h33
  4. [Access2003] Exporter le contenu d'une listbox vers excel
    Par hoaxpunk dans le forum VBA Access
    Réponses: 1
    Dernier message: 24/05/2007, 16h56
  5. Réponses: 4
    Dernier message: 26/07/2006, 17h46

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo