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 :

textbox et combobox


Sujet :

Macros et VBA Excel

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    33
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 33
    Par défaut textbox et combobox
    Bonjour tout le monde,

    J'ai des userform qui contiennent des textbox et des combobox.
    J'ai un code pour enregistrer toutes les textbox sur des lignes excel, mais comment puis-je aussi enregistrer mes combobox ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    'alerte message box pour confirmer l'action de mettre à jour
    Dim reponse As Byte
    reponse = MsgBox("Confirmez-vous la mise à jour des données", vbQuestion + vbYesNo + vbDefaultButton2, "Enregistrement")
    If reponse = vbNo Then Exit Sub
    
    'pour changer de ligne de code 
    For I = 4 To 154
    ' pour changer le colone 
        For J = 1 To 35
        'code pour enregistrer dans les cellules
            If TextBox1.Value = Worksheets("bdouvrages").Cells(I, 1).Value Then Worksheets("bdouvrages").Cells(I, J).Value = MAJFIO.Controls("TextBox" & J).Value
        Next
    Next

    N'y a t il pas un dénominateur commun ? du genre : je veux que tous les controls de l'userform1 s'enregistre ?

    Merci de votre aide

  2. #2
    Membre Expert Avatar de ZebreLoup
    Homme Profil pro
    Ingénieur Financier
    Inscrit en
    Mars 2010
    Messages
    994
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur Financier
    Secteur : Finance

    Informations forums :
    Inscription : Mars 2010
    Messages : 994
    Par défaut
    Tu peux boucler sur les contrôles de la feuille

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    33
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 33
    Par défaut
    merci j'y pensais! mais concrètement, le code s'écrit comment ?

  4. #4
    Expert confirmé
    Avatar de Didier Gonard
    Homme Profil pro
    Formateur Office et développeur VBA en freelance
    Inscrit en
    Février 2008
    Messages
    2 805
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Formateur Office et développeur VBA en freelance

    Informations forums :
    Inscription : Février 2008
    Messages : 2 805
    Par défaut
    Bonjour,

    Tu as tous les exemples de base ici :

    I-B. Boucler sur les contrôles contenus dans la Forme

    Cordialement,

    Ps : si le côté technique de la réponse = OK ou pas => pensez à cliquer sur les pouces et quand question résolue à la taguer résolue, et chaque action vous raporte des points

    Didier

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    33
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 33
    Par défaut
    Merci pour les infos, mais concrètement, comment mon code s'articule? Je n'y arrive pas, il doit me manquer qqch !

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    Dim reponse As Byte
    reponse = MsgBox("Confirmez-vous la mise à jour des données", vbQuestion + vbYesNo + vbDefaultButton2, "Enregistrement")
    If reponse = vbNo Then Exit Sub
     
    'pour changer de ligne de code 
    For I = 4 To 154
    ' pour changer le colone 
        For J = 1 To 35
        'code pour enregistrer dans les cellules
            If TextBox1.Value = Worksheets("bdouvrages").Cells(I, 1).Value Then Worksheets("bdouvrages").Cells(I, J).Value = MAJFIO.Controls("TextBox" & J).Value
        Next
    Next

    Merci de votre aide

  6. #6
    Expert confirmé
    Avatar de Didier Gonard
    Homme Profil pro
    Formateur Office et développeur VBA en freelance
    Inscrit en
    Février 2008
    Messages
    2 805
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Formateur Office et développeur VBA en freelance

    Informations forums :
    Inscription : Février 2008
    Messages : 2 805
    Par défaut
    Bonjour,

    pas vraiment clair ce que tu veux, vois ici un exemple concret de scan de controls d'un USF :

    http://www.developpez.net/forums/d11...ons-checkboxs/


    Cordialement,

    Ps : si le côté technique de la réponse = OK ou pas => pensez à cliquer sur les pouces et quand question résolue à la taguer résolue, et chaque action vous rapporte des points

    Didier

  7. #7
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    33
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 33
    Par défaut
    En fait dans mon userform j'ai des textbox et des combobox. Chacune d'entre elles correspondent à une cellule dans excel. Je voudrais trouver une commande qui permette de ne pas faire de différence entre les textbox et les combobox :

    Voila mes lignes de code pour des textbox uniquement. Comment faire pour inclure également des combobox ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    'pour changer de ligne de code 
    For I = 4 To 154
    ' pour changer le colone 
        For J = 1 To 35
        'code pour enregistrer dans les cellules
            If TextBox1.Value = Worksheets("bdouvrages").Cells(I, 1).Value Then Worksheets("bdouvrages").Cells(I, J).Value = MAJFIO.Controls("TextBox" & J).Value
        Next
    Next

  8. #8
    Membre Expert Avatar de ZebreLoup
    Homme Profil pro
    Ingénieur Financier
    Inscrit en
    Mars 2010
    Messages
    994
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur Financier
    Secteur : Finance

    Informations forums :
    Inscription : Mars 2010
    Messages : 994
    Par défaut
    Et si tu appelles tes ComboBox "TextBox253" comme les autres, ça ne marche pas ?
    Ce n'est pas très clair ce que tu veux faire. Tu as disons 10 lignes et 10 combobox/textbox et tu veux que si la première ligne correspond à la première combobox, tu copies les autres controles dans les lignes en dessous ?

    Explique peut-être plus clairement ce que tu veux faire, peut-être que tu n'es tout simplement pas parti du tout dans la bonne direction.

  9. #9
    Expert confirmé
    Avatar de Didier Gonard
    Homme Profil pro
    Formateur Office et développeur VBA en freelance
    Inscrit en
    Février 2008
    Messages
    2 805
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Formateur Office et développeur VBA en freelance

    Informations forums :
    Inscription : Février 2008
    Messages : 2 805
    Par défaut
    bonjour,

    l'équivalent de :

    c'est ?

    .

  10. #10
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    33
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 33
    Par défaut
    Merci ZEBRELOUP !!!
    Tu as compris ce que je voulais.
    Je ne pensais pas que l'on pouvais renommer une combobox en textbox. Cela marche parfaitement. Merci beaucoup. Je cherchai trop compliqué!
    Merci de ton aide

  11. #11
    Membre Expert Avatar de ZebreLoup
    Homme Profil pro
    Ingénieur Financier
    Inscrit en
    Mars 2010
    Messages
    994
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur Financier
    Secteur : Finance

    Informations forums :
    Inscription : Mars 2010
    Messages : 994
    Par défaut
    Tu peux les appeler toto1, toto2, toto3... si tu veux. C'est toi qui fixe le nom de tous tes contrôles.
    Par contre, ça ne marchera pas toujours car il faut que la propriété que tu récupères soit commune à tous les controles. Il n'y aura pas de value pour un label par exemple

  12. #12
    Expert confirmé
    Avatar de Didier Gonard
    Homme Profil pro
    Formateur Office et développeur VBA en freelance
    Inscrit en
    Février 2008
    Messages
    2 805
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Formateur Office et développeur VBA en freelance

    Informations forums :
    Inscription : Février 2008
    Messages : 2 805
    Par défaut
    Bonjour,

    Et si tu appelles tes ComboBox "TextBox253" comme les autres
    Bien vu pour le décryptage de ce que voulais kaboche

    Par contre aller nommer une Combobox "TextBoxzz", c'est une abomination

    C'est la voie à une maintenance impossible, à moins d'une stratégie d'obfuscation, volontaire, c'est à éviter à tout prix !

    Par contre employer un nom générique pour nommer les deux = OK genre CotrolaDede01 etc..

    Donc pour kaboche, ZebreLoup n'a employé cet exemple précis que pour tenter de concrétiser ton idée, mais ne surtout pas l'employer à la lettre

    cordialement,

    Didier

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

Discussions similaires

  1. Changer la couleur des TextBox et Combobox dans un USF
    Par olivepao dans le forum Macros et VBA Excel
    Réponses: 13
    Dernier message: 05/01/2009, 22h41
  2. Textbox vs Combobox avec Textcolumn
    Par Jeyjey1 dans le forum Macros et VBA Excel
    Réponses: 12
    Dernier message: 30/10/2008, 10h42
  3. [WPF] textbox ou combobox dans un listview
    Par modafine dans le forum Windows Presentation Foundation
    Réponses: 5
    Dernier message: 14/08/2008, 11h37
  4. comment vider plusieurs textbox et combobox dans un formilaire et Plus
    Par r.mehdi dans le forum VB 6 et antérieur
    Réponses: 6
    Dernier message: 05/05/2008, 16h52
  5. chaines textbox vers combobox
    Par rober dans le forum VB 6 et antérieur
    Réponses: 8
    Dernier message: 18/10/2006, 09h41

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