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 :

Création de liste automatique


Sujet :

Macros et VBA Excel

  1. #1
    Membre averti
    Inscrit en
    Mars 2009
    Messages
    54
    Détails du profil
    Informations forums :
    Inscription : Mars 2009
    Messages : 54
    Par défaut Création de liste automatique
    Bonjou à tous,

    Je me permets de venir vous embêter un peu.

    J'ai un fichier excel qui permet d'établir des bons de commande. Dans l'établissement du bon, on récupère le vendeur et le compte à débiter.

    Dans ce compte, il y a des sous compte pour la gestion des finances.

    La liste des comptes et des sous comptes peut être amener à changer et vu que le fichier est utiliser par des personnes novices en VBA impossible de faire quelque chose de fixe.

    Mon projet serait donc de créer automatiquement les listes de comptes.

    Les comptes sont identifié par une série de chiffre et les sous compte on le même préfixe incrémenter d'un autre chiffre.

    Merci d'avance

    PS : j'espère avoir été clair :s

  2. #2
    Membre Expert Avatar de Krovax
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    1 888
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 1 888
    Par défaut
    Citation Envoyé par Mammy Potter Voir le message

    Mon projet serait donc de créer automatiquement les listes de comptes.
    Bonne chance
    Si tu as des questions une fois que tu as commmencé ton code n'hésite pas. Par contre il nous faudra un peu plus d'infos et surtout des infos précises.

    Citation Envoyé par Mammy Potter Voir le message
    le fichier est utiliser par des personnes novices en VBA
    Si tu es toi aussi novice en VBA je te conseil ce guide que j'affectionne beaucoup

  3. #3
    Expert confirmé
    Avatar de Qwazerty
    Homme Profil pro
    La très haute tension :D
    Inscrit en
    Avril 2002
    Messages
    4 128
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France

    Informations professionnelles :
    Activité : La très haute tension :D
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2002
    Messages : 4 128
    Par défaut
    Salut et bienvenu
    En effet + d'infos sont les bienvenu, voir même un fichier exemple avec des données bidons mais qui représente la structure ou une partie de celle ci nous permettant de faire des essais.
    Certains détails pourrait être utile, comme par exemple les listes s'affiche dans quoi ? des combobox? des validations dans une cellule?
    Un petit fichier serait preferable je pense
    a++
    qwaz

    MagicQwaz := Harry Potter la baguette en moins
    Le monde dans lequel on vit
    Ma page perso DVP
    Dernier et Seul Tutoriel : VBA & Internet Explorer
    Dernière contribution : Lien Tableau Structuré et UserForm
    L'utilisation de l’éditeur de message

  4. #4
    Membre averti
    Inscrit en
    Mars 2009
    Messages
    54
    Détails du profil
    Informations forums :
    Inscription : Mars 2009
    Messages : 54
    Par défaut
    Merci pour vos réponse,

    Je ne suis pas une personne de chevronnée en VBA, mais je ne suis pas novice non plus.

    Pour plus d'info, j'ai une UserForm avec 2 combobox la première choisi le compte principal, la seconde le sous compte.

    Là pour l'instant je le fais sous forme de liste nommée mais par contre dès qu'un utilistateur rajoute un compte il n'apparaît pas dans la liste.

    Et donc au final j'aimerais que les listes se fassent automatiquement mais je n'arrive pas à trouver la fonction qui me permette de faire une liste en fonction du début de la chaine de caractère.
    Fichiers attachés Fichiers attachés

  5. #5
    Membre averti
    Inscrit en
    Mars 2009
    Messages
    54
    Détails du profil
    Informations forums :
    Inscription : Mars 2009
    Messages : 54
    Par défaut
    Je progresse dans mon projet, maintenant je suis en train de chercher comment faire pour sélectionner une plage de cellule où il y aurait le même préfixe (le début du compte principal)

  6. #6
    Expert confirmé
    Avatar de Qwazerty
    Homme Profil pro
    La très haute tension :D
    Inscrit en
    Avril 2002
    Messages
    4 128
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France

    Informations professionnelles :
    Activité : La très haute tension :D
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2002
    Messages : 4 128
    Par défaut
    Salut
    Voila ce que je te propose.
    C a base d'étiquette dynamique, il reste un soucis avec les comptes contenant des parties non numeric (-saj).
    Tu peux rajouter des ligne excel modifiera les formule en conséquence, il faudra toujours faire insérer une nouvelle ligne ne pas utiliser les ligne vide présente dans le fichier.

    Les Numéro de compte sont scruté sur 5 chiffres et les numéro de compte inscrit dans le tableau du bas doivent etre identique a ceux noté plus haut.

    Dis moi ce que tu en penses

    ++
    Qwaz

    MagicQwaz := Harry Potter la baguette en moins
    Le monde dans lequel on vit
    Ma page perso DVP
    Dernier et Seul Tutoriel : VBA & Internet Explorer
    Dernière contribution : Lien Tableau Structuré et UserForm
    L'utilisation de l’éditeur de message

  7. #7
    Membre averti
    Inscrit en
    Mars 2009
    Messages
    54
    Détails du profil
    Informations forums :
    Inscription : Mars 2009
    Messages : 54
    Par défaut
    Merci bien c'est nikel tout ça, il faut que je me penche sur les étiquettes dynamique.

    Sinon de mon côté j'avais avancé, je pense que ce n'est pas mal nom plus mais c'est plus complexe que toi lol. Voici mon code

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    Private Sub cb_cat_Change()
     
    'Recherche la valeur de la catégorie dans la liste
        With Range("List_cat")
            Set c = .Find(cb_cat.Value, LookIn:=xlValues)
        End With
            h = c.Offset(0, -1).Value & "*"
     
    'Compte le nombre de sous compte dans la liste
    Dim m As Integer
    With Columns(2)
        Set d = .Find("sscat", LookIn:=xlValues)
     
        m = d.End(xlDown).Row
        nbcel = 0
     
    For Each cel In Range(d, "b" & m)
     
    If cel Like h Then
    nbcel = nbcel + 1
    End If
     
    Next cel
     
    End With
     
    With Range("B54", "b" & m)
        Set b = .Find(h, LookIn:=xlValues)
     
    e = nbcel - 1
    I = Range(b, "b" & b.Row + e)
     
    If e = 0 Then
        cb_sscat.Value = b.Value
        Else
        cb_sscat.List = I
    End If
            tb_bud.Value = c.Offset(0, 1).Text
            tb_cons.Value = c.Offset(0, 2).Text
            tb_dispo.Value = c.Offset(0, 3).Text
     
    End With
     
     
     
    End Sub
    Par contre avec ce code, il ne me manque plus qu'à trouvé comment on vide la liste car quand je change de compte et qu'il y a qu'une entré, ça me garde la liste de compte qu'il y avait avant.

  8. #8
    Expert confirmé
    Avatar de Qwazerty
    Homme Profil pro
    La très haute tension :D
    Inscrit en
    Avril 2002
    Messages
    4 128
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France

    Informations professionnelles :
    Activité : La très haute tension :D
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2002
    Messages : 4 128
    Par défaut
    Salut
    Je suis en train de me dire que les Étiquettes dynamique ne sont peut etre pas utile vu la disposition du tableau et vu comme je les ai créé...
    [Edit] c'est même certain elles ne servent a rien ... en utilisant insert excel modifie l'étiquette de lui même, donc cette solution dynamique n'est utile que qd la liste est coller en debut de colonne et que l'on rajoute des entrée a la fin de la liste sans inserer les lignes[/Edit]
    Pour vider le combobox c'est l'instruction Clear il me semble.

    Une question, l'organisation de ton fichier et définitif ou on peut le modifier?
    a++
    Qwaz

    MagicQwaz := Harry Potter la baguette en moins
    Le monde dans lequel on vit
    Ma page perso DVP
    Dernier et Seul Tutoriel : VBA & Internet Explorer
    Dernière contribution : Lien Tableau Structuré et UserForm
    L'utilisation de l’éditeur de message

  9. #9
    Membre averti
    Inscrit en
    Mars 2009
    Messages
    54
    Détails du profil
    Informations forums :
    Inscription : Mars 2009
    Messages : 54
    Par défaut
    Merci bien QWAZERTY pour ton aide.

    Pour le vidage j'avais (enfin) trouvé.

    La feuille que je t'ai envoyé peut changer sans problème.

    Par contre mon code marche très bien quand je suis sur la page 'Tampon' (celle que j'ai envoyé) mais par contre dès que je suis sur la page principal il bug au niveau du 'For each' :/

    Edit :

    Trouvé la soluce en rajoutant

    Avant chaque 'Range'

    Mode barbare 'On'

  10. #10
    Expert confirmé
    Avatar de Qwazerty
    Homme Profil pro
    La très haute tension :D
    Inscrit en
    Avril 2002
    Messages
    4 128
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France

    Informations professionnelles :
    Activité : La très haute tension :D
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2002
    Messages : 4 128
    Par défaut
    ^^
    Non non c pas barbare c'est la solution ^^ ou alors je suis en mode barbare 'on' en permanence lol

    Donc c'est bon ton probleme est resolu? pas besoin que je cherche de mon coté?

    A++
    Qwaz

    MagicQwaz := Harry Potter la baguette en moins
    Le monde dans lequel on vit
    Ma page perso DVP
    Dernier et Seul Tutoriel : VBA & Internet Explorer
    Dernière contribution : Lien Tableau Structuré et UserForm
    L'utilisation de l’éditeur de message

  11. #11
    Membre averti
    Inscrit en
    Mars 2009
    Messages
    54
    Détails du profil
    Informations forums :
    Inscription : Mars 2009
    Messages : 54
    Par défaut
    Oui c'est bon, je te remercie encore QWAZERTY pour ton aide.

  12. #12
    Expert confirmé
    Avatar de Qwazerty
    Homme Profil pro
    La très haute tension :D
    Inscrit en
    Avril 2002
    Messages
    4 128
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France

    Informations professionnelles :
    Activité : La très haute tension :D
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2002
    Messages : 4 128
    Par défaut
    Salut
    Pour ne pas rester sur ta fin avec les étiquettes dynamique que j'avais fort mal utilisé, voila leur véritable utilité.

    A++
    Qwaz

    MagicQwaz := Harry Potter la baguette en moins
    Le monde dans lequel on vit
    Ma page perso DVP
    Dernier et Seul Tutoriel : VBA & Internet Explorer
    Dernière contribution : Lien Tableau Structuré et UserForm
    L'utilisation de l’éditeur de message

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

Discussions similaires

  1. Réponses: 2
    Dernier message: 04/06/2006, 21h35
  2. [PHP-JS] Création de liste déroulante dynamique
    Par eeckhout dans le forum Langage
    Réponses: 2
    Dernier message: 28/02/2006, 13h41
  3. Liste automatique
    Par Funraill.net dans le forum Langage
    Réponses: 4
    Dernier message: 31/10/2005, 15h56
  4. [Tableaux] Création de lien automatique
    Par GarGamel55 dans le forum Langage
    Réponses: 3
    Dernier message: 17/09/2005, 17h26

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