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 :

Zone de liste référence à un tableau


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    246
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Mai 2008
    Messages : 246
    Par défaut Zone de liste référence à un tableau
    Bjr, bjr, me revoici, me revoila, je sature un peu d'excel !!!
    Donc j'explique le problème, j'ai un forumlaire, avec une zone de liste, et je voudrais que les choix fasse référence à un tableau de ma feuille excel, et aussi me donne le numero de la ligne
    Comme ca dés que mon tableau change, ma zone de liste aussi, et je peut continuer mon programme ayant le numero de la ligne !! c'est faisable ??
    Merci de vos précieuse aide !

  2. #2
    Membre Expert

    Homme Profil pro
    Technicien Métrologie R&D
    Inscrit en
    Janvier 2007
    Messages
    1 610
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 70
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Technicien Métrologie R&D
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 610
    Billets dans le blog
    1
    Par défaut
    ta zone de liste s'obtien avec decaler(titre;1;0;nbval(i:i);1
    dans nom definir nom=tablo
    tout en bas
    =decaler(titre;1;0;nbval(i:i);nb colonne)

    ceci supose que : la liste de validation est en colonne i (seule)
    nbval(i:i) s'obtient en cliquant l'entête de colonne I tu doit avoir nbval(feuil1!$i:$i) toujours avoir de référence absolu sinon tu aura n'importe quoi
    le titre est le titre de colonne (exclus du tableau)
    titre est également cliquer sur la feuille
    après ça ton formulaire se rempli en fonction du tableau par un rechercheV(cellulle_validée;tablo;N°colonne;faux)
    N°colonne est le numéro de colonne du tableau pas de le feuille
    faux est du l'humour microsoftien c'est pour que la valeur soit exact
    Cordialement
    Daranc

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    246
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Mai 2008
    Messages : 246
    Par défaut
    Euh, j'ai pas tout compri,
    Ou faut'il mettre "=decaler(titre;1;0;nbval(i:i);nb colonne)" et "rechercheV(cellulle_validée;tablo;N°colonne;faux) " ??

    j'ai des petites pistes ...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
        Dim c As Range
        ComboBox1.Clear
        For Each c In Range("A7", Range("A7").End(xlDown).Address)
            ComboBox1.AddItem c
        Next

  4. #4
    Membre Expert

    Homme Profil pro
    Technicien Métrologie R&D
    Inscrit en
    Janvier 2007
    Messages
    1 610
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 70
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Technicien Métrologie R&D
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 610
    Billets dans le blog
    1
    Par défaut
    tu veut une solution VBA pour un USF
    si tu ajoutes des données a ton tableau la méthode veut que le tableau et le combobox soit réinitialisé lorsque tu as
    donc si tu charge le combobox avec le code cité ça devrait marcher
    les indirect(titre marchent que si tu es en mode feuille de calcul ça ecrit des fonction dans insertion non definir
    Daranc

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    246
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Mai 2008
    Messages : 246
    Par défaut
    Bonjour,
    J'y suis pas encore !!
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Dim c As Range
    Dim selection As Range
    ComboBox1.Clear
    selection = Sheets("Feuil1").Range("A6:A42").select
     For Each c In selection
        If c <> "" Then
              ComboBox1.AddItem c
        End If
     Next
    Je voudrais que ma combobox se charge quant j'ouvre mon formulaire, donc j'ai mis mon code dans "Private Sub userform1()"
    Mais ca ne fonctionne pas. Ou mettre le userform1.show, si ce n'est dans le code de mon bouton pour l'ouvrir?

  6. #6
    Membre Expert

    Homme Profil pro
    Technicien Métrologie R&D
    Inscrit en
    Janvier 2007
    Messages
    1 610
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 70
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Technicien Métrologie R&D
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 610
    Billets dans le blog
    1
    Par défaut
    la combobo doit etre alimente dans l'userform à "initialize"
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Private Sub UserForm_Initialize()
    with sheets(1)
    .Range("A6:A42").select
     For Each c In selection
        If c <> "" Then
              ComboBox1.AddItem c
        End If
    end with
    End Sub
    un truc de ce genre
    Daranc

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

Discussions similaires

  1. Réponses: 12
    Dernier message: 29/01/2024, 15h32
  2. Transfert partiel tableau dans zone de liste
    Par mécano41 dans le forum VBA Word
    Réponses: 3
    Dernier message: 14/02/2008, 08h51
  3. [OpenOffice][Base de données] Requête paramétrée faisant référence à la valeur d'une zone de liste
    Par tanguy.berges dans le forum OpenOffice & LibreOffice
    Réponses: 0
    Dernier message: 04/02/2008, 16h14
  4. Afficher 2 colones d'un tableau dans une zone de liste
    Par Floch dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 17/05/2006, 09h37
  5. [VB6] Zone de liste modifiable basée sur un champ
    Par pepper dans le forum VB 6 et antérieur
    Réponses: 13
    Dernier message: 27/11/2002, 13h41

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