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 :

[VBA-E]ComboBox + RowSource ne concerne que les lignes ?


Sujet :

Macros et VBA Excel

  1. #1
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Points : 15 543
    Points
    15 543
    Par défaut [VBA-E]ComboBox + RowSource ne concerne que les lignes ?
    Je fais ça (VBA97)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Dim Plage
    Plage = "A1:" & Cells(1, Cells(1, 1).End(xlToRight).Column).Address(False, False)
    TypeRecherche.RowSource = Plage
    La plage est bien désignée : "A1:N1"
    Or la combo n'affiche que la cellule A1.
    Est-ce que RowSource, comme son nom l'indique, ne va chercher que dans les lignes ?
    Existe-t-il une syntaxe que j'aurais oubliée ?

    Merci de votre réponse

    A+

  2. #2
    Membre expérimenté Avatar de Megaxel
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    1 187
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2003
    Messages : 1 187
    Points : 1 405
    Points
    1 405
    Par défaut
    Au risque de passer pour un blaireau (sans vexer les blaireaux qui trainent sur ce site, ouvert à tout type d'animaux, à poils, à écailles et à plumes)... C'est quoi, "TYpeRecherche" ?

  3. #3
    Modérateur
    Avatar de AlainTech
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Mai 2005
    Messages
    4 235
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 70
    Localisation : Belgique

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Finance

    Informations forums :
    Inscription : Mai 2005
    Messages : 4 235
    Points : 24 327
    Points
    24 327
    Par défaut
    Juste pour apporter de l'eau au moulin:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    TypeRecherche.List = Plage
    Ca marche pas???

    Je pars me lisser la fourure.

  4. #4
    Modérateur
    Avatar de AlainTech
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Mai 2005
    Messages
    4 235
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 70
    Localisation : Belgique

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Finance

    Informations forums :
    Inscription : Mai 2005
    Messages : 4 235
    Points : 24 327
    Points
    24 327
    Par défaut
    Je pense avoir vu où est ton blème.

    La combo va afficher "comme" sur la feuille.

    Les colonnes en colonnes et les lignes...

    Si tu lui dis "une ligne sur 14 colonnes" et qu'il n'y a qu'une colonne dans la combo...

    Tu me sens venir?

  5. #5
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Points : 15 543
    Points
    15 543
    Par défaut
    Ok, Alain, j'ai compris. Je vais voir avec trois colonnes et je réponds.

    TypeRecherche.List = Plage
    n'avait pas "l'air" de fonctionner mais je vais tout de même vérifier... P't'être bien que j'ai mis TypeRecherche.List = Range(Plage)... (Je ne suis pas au boulot, je vérifie dans un moment) mais je doute.

    Merci de ta réponse.

    A+

    PS - Hello Mega, je te trouve bien silencieux, je t'ai froissé ?

  6. #6
    Modérateur
    Avatar de AlainTech
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Mai 2005
    Messages
    4 235
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 70
    Localisation : Belgique

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Finance

    Informations forums :
    Inscription : Mai 2005
    Messages : 4 235
    Points : 24 327
    Points
    24 327
    Par défaut
    Citation Envoyé par AlainTech
    Juste pour apporter de l'eau au moulin:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    TypeRecherche.List = Plage
    Ca marche pas???

    Je pars me lisser la fourure.
    Je viens de tester et je confirme:

    Ca marche!

    Et hop, je m'ébroue un coup.

  7. #7
    Inactif  
    Avatar de jmfmarques
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    3 784
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 3 784
    Points : 4 674
    Points
    4 674
    Par défaut
    Attends !
    Moi je n'ai pas de VBA moderne, mais ...
    Quid d'une boucle sur tes cellules pour alimenter celles de la combo ? (c'est idiot ?) :

  8. #8
    Modérateur
    Avatar de AlainTech
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Mai 2005
    Messages
    4 235
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 70
    Localisation : Belgique

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Finance

    Informations forums :
    Inscription : Mai 2005
    Messages : 4 235
    Points : 24 327
    Points
    24 327
    Par défaut
    Citation Envoyé par ouskel'n'or
    Hélas, TypeRecherche.List = Plage ne fonctionne pas (j't'ai dit.. VBA97...)
    Mon essai était fait sur Excel 97 aussi!

    Sauf que j'ai assigné le range à la liste sans passer par une variable et que je n'ai pas oublié de mentionner la feuille contenant le range.

  9. #9
    Modérateur
    Avatar de AlainTech
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Mai 2005
    Messages
    4 235
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 70
    Localisation : Belgique

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Finance

    Informations forums :
    Inscription : Mai 2005
    Messages : 4 235
    Points : 24 327
    Points
    24 327
    Par défaut
    Je me dis donc que pour récupérer un range dans une variable, vu qu'un range est un objet, il faut probalement faire un

  10. #10
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Points : 15 543
    Points
    15 543
    Par défaut
    Citation Envoyé par jmf
    Quid d'une boucle sur tes cellules pour alimenter celles de la combo ? (c'est idiot ?)
    C'est ce que j'ai fait mais comme j'ai l'habitude d'utiliser list avec les listbox, je ne vois pas pourquoi je n'ai pas la même chose pour les combos
    (NB - J'ai indiqué l'utilisation de AddItem en bas de mon deuxième message )

    Alain, tu avais raison, j'ai mes 5 entêtes de colonnes si je fais ça
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Plage = "A1:" & Cells(1, Cells(1, 1).End(xlToRight).Column).Address(False, False)
    Set Combo = GrilleDeSaisie.Controls("DemandeRecherche")
        Combo.ColumnCount = 5
        Combo.RowSource = Plage
    J'en suis là et je suis très faché

    A+

  11. #11
    Membre expérimenté Avatar de Megaxel
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    1 187
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2003
    Messages : 1 187
    Points : 1 405
    Points
    1 405
    Par défaut
    Bon, je n'ai rien à ajouter à votre discussion, mais je voulais juste rassurer Ousk : pas de problème, je ne suis pas vexé...

  12. #12
    Modérateur
    Avatar de AlainTech
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Mai 2005
    Messages
    4 235
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 70
    Localisation : Belgique

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Finance

    Informations forums :
    Inscription : Mai 2005
    Messages : 4 235
    Points : 24 327
    Points
    24 327
    Par défaut
    Ben, j'avais qu'une ligne, moi...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
      ComboBox1.List = Sheets("Sheet1").Range([A1], [D10])

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

Discussions similaires

  1. [RegEx] Fonction preg_match() concernant que les chiffres
    Par cahuet-200 dans le forum Langage
    Réponses: 22
    Dernier message: 03/12/2014, 11h24
  2. Ce forum ne concerne que les scripts de CMS en langage PHP
    Par Community Management dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 0
    Dernier message: 14/03/2007, 18h30
  3. Réponses: 5
    Dernier message: 24/07/2006, 14h01
  4. [SQL] n'obtenir que les lignes >1 d'un count
    Par shaun_the_sheep dans le forum Oracle
    Réponses: 4
    Dernier message: 25/01/2006, 16h31
  5. récupérer que les lignes paires ou impairs d'une proc ,?
    Par c_moi_c_moi dans le forum Oracle
    Réponses: 5
    Dernier message: 16/11/2005, 18h03

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