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

Macros et VBA Excel Discussion :

Récupérer une valeur calculée sur un sheet pour le renvoyer dans une listbox [XL-2003]


Sujet :

Macros et VBA Excel

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    20
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2011
    Messages : 20
    Points : 7
    Points
    7
    Par défaut Récupérer une valeur calculée sur un sheet pour le renvoyer dans une listbox
    Bonjour,
    Il semble que mon 1er message ne soit pas passé. Je vous le renvoie donc.
    Mon problème est le suivant: je saisis des données dans un userform qui sont envoyées dans un sheet. Des calculs de conformité sont effectués. Je souhaite récupérer certains de ces calculs dans le userform au niveau de listbox. Les données saisies s'incrémentant, seule la valeur de la dernière ligne doit être renvoyée. A l'heure actuelle, j'ai bien le retour au niveau de ma listbox, mais de la colonne entière !
    Quelqu'un a t-il la solution ?
    Merci d'avance.
    Cordialement

  2. #2
    Membre chevronné Avatar de rvtoulon
    Homme Profil pro
    Agent Technique
    Inscrit en
    Mars 2009
    Messages
    1 042
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Agent Technique
    Secteur : Santé

    Informations forums :
    Inscription : Mars 2009
    Messages : 1 042
    Points : 2 003
    Points
    2 003
    Par défaut
    Bonjour,
    A l'heure actuelle, j'ai bien le retour au niveau de ma listbox, mais de la colonne entière !
    Très bien. Peux-tu mettre le code STP parce que :
    seule la valeur de la dernière ligne doit être renvoyée
    Oui, mais de quelle feuille, de quelle colonne etc...?
    Peux-tu en dire un peu plus stp.
    @+

    Si vous avez trouvé la solution à votre problème n'oubliez pas d'appuyer sur
    Et n'oubliez pas de voter en appuyant sur si ce message a repondu à vos attentes.
    Ou sur si ce n'est pas le cas

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    20
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2011
    Messages : 20
    Points : 7
    Points
    7
    Par défaut
    Bonjour,
    le code est le suivant:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    With Sheets("BD").Range("L1")
             Me.ListBox1.RowSource = "BD!L1:L1" & Sheets("BD").Cells(1, 12).End(xlDown).Row
         End With

  4. #4
    Membre chevronné Avatar de rvtoulon
    Homme Profil pro
    Agent Technique
    Inscrit en
    Mars 2009
    Messages
    1 042
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Agent Technique
    Secteur : Santé

    Informations forums :
    Inscription : Mars 2009
    Messages : 1 042
    Points : 2 003
    Points
    2 003
    Par défaut
    Re,
    je ne sais pas si j'ai bien compris:
    Tu veux mettre dans la listbox la valeur de la dernière cellule utilisée de la colonne L?

    si c'est çà alors :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Me.ListBox1.AddItem Sheets("BD").Range("L" & Rows.Count).End(xlUp).Value
    @+

    Si vous avez trouvé la solution à votre problème n'oubliez pas d'appuyer sur
    Et n'oubliez pas de voter en appuyant sur si ce message a repondu à vos attentes.
    Ou sur si ce n'est pas le cas

  5. #5
    pgz
    pgz est déconnecté
    Expert éminent Avatar de pgz
    Homme Profil pro
    Développeur Office VBA
    Inscrit en
    Août 2005
    Messages
    3 692
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 70
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Office VBA
    Secteur : Conseil

    Informations forums :
    Inscription : Août 2005
    Messages : 3 692
    Points : 6 591
    Points
    6 591
    Par défaut
    Bonjour.

    Question de curiosité : cela sert à quoi une listbox avec une seule valeur?

    PGZ
    pluritas non est ponenda sine necessitate - Le rasoir d'Okham
    Ne jamais attribuer à la malignité ce que la stupidité peut expliquer -Le rasoir d'Hanlon

  6. #6
    Futur Membre du Club
    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    20
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2011
    Messages : 20
    Points : 7
    Points
    7
    Par défaut
    Bonjour,
    Un grand merci à rvtoulon. Cela fonctionne enfin. J'ai tout de même mis ce code dans un bouton de commande car la valeur renvoyée était celle de la ligne précédente.
    Maintenant, je valide mes données et ensuite je demande le retour de la dernière cellule colonne L.
    Quant au choix de la listbox, en fait peu m'importe que ce soit une textbox, combobox ou listbox, je voulais juste un retour d'information dans une box. Comme j'ai différents contrôles en retour sur différentes colonnes et que certains sont numériques, la textbox me semblait proscrite et je souhaitais éviter une cascade de msgbox.
    En fait, j'essaie d'apprendre, tout cela est très interressant mais parfois très obscur !!!
    Encore merci et à bientôt
    Très certainement.

  7. #7
    Futur Membre du Club
    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    20
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2011
    Messages : 20
    Points : 7
    Points
    7
    Par défaut
    Re
    Ça n'a pas duré longtemps.

    Qu'y a t-il d'anormal dans ces lignes ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Private Sub CMD2_Click()
     
     Me.ListBox1.AddItem Sheets("BD").Range("L" & Rows.Count).End(xlUp).Text
     Me.ListBox2.AddItem Sheets("BD").Range("AB" & Rows.Count).End(xlUp).Text
     Me.ListBox3.AddItem Sheets("BD").Range("AE" & Rows.Count).End(xlUp).Text
     
    End Sub
    Dans mon Usf, je reçois bien "L" mais pas "AB" ni "AE".
    "L" me renvoie un horaire, "AB" et "AE" devraient me renvoyer le message "x discordances" en fonction des calculs effectués dans les colonnes les précédant.

    Merci de votre patience !
    @ +

  8. #8
    Expert éminent sénior Avatar de mercatog
    Homme Profil pro
    Inscrit en
    Juillet 2008
    Messages
    9 435
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Autre

    Informations forums :
    Inscription : Juillet 2008
    Messages : 9 435
    Points : 31 877
    Points
    31 877
    Par défaut
    Utilise une seule ListBox (ListBox1) avec propriété ColumnCount à 3.
    (Je rejoins la remarque sur l'utilité d'une listbox pour afficher une seule donnée)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    Private Sub CMD2_Click()
    Dim LastLig As Long
     
    LastLig = Sheets("BD").Range("L" & Rows.Count).End(xlUp).Row
    With Me.ListBox1
        .Clear
        .AddItem Sheets("BD").Range("L" & LastLig).Value
        .List(0, 1) = Sheets("BD").Range("AB" & LastLig).Value
        .List(0, 2) = Sheets("BD").Range("AE" & LastLig).Value
    End With
    End Sub
    Cordialement.
    J'utilise toujours le point comme séparateur décimal dans mes tests.

  9. #9
    Futur Membre du Club
    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    20
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2011
    Messages : 20
    Points : 7
    Points
    7
    Par défaut
    Bonjour,
    Merci mercatog. Le code fonctionne très bien.
    Le choix de la listbox était arbitraire. Sans vouloir abuser, quel serait le code pour un retour vers 3 textbox ?

    Merci beaucoup !

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

Discussions similaires

  1. [XL-2007] Récupérer la valeur de 2 colonnes de la ligne sélectionnée dans une ListBox
    Par chrisaccess dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 06/02/2015, 21h03
  2. Réponses: 2
    Dernier message: 21/01/2013, 16h44
  3. Réponses: 3
    Dernier message: 29/09/2009, 20h58
  4. cliquer sur un bouton pour tout selectionner dans une liste multiple
    Par PAYASS59 dans le forum Général JavaScript
    Réponses: 9
    Dernier message: 23/07/2007, 15h33
  5. chat:cliquer sur 1 smiley pour le mettre dans une conversati
    Par cocacollection dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 19/03/2006, 17h58

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