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 :

combobox :Initialisation combobox


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Inscrit en
    Juillet 2007
    Messages
    502
    Détails du profil
    Informations forums :
    Inscription : Juillet 2007
    Messages : 502
    Par défaut combobox :Initialisation combobox

    bonsoir à tous
    voila le petit probleme .
    j'ai plusieurs combobox qui sont initialise par le code suivant

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Dim jj As Integer 'debut de la procedure pour eliminer les doublons 
    For jj = 2 To Sheets("course").Range("G65536").End(xlUp).Row
    ComboBox3 = Sheets("course").Range("G" & jj)
    If ComboBox3.ListIndex = -1 Then ComboBox3.AddItem Sheets("course").Range("G" & jj)
    Next jj 'fin de la procedure doublon
    seulement à l'ouverture du fourmulaire je souhaiterai que le contenu des combobox concernes soient ="tout". seul une action par l'utilisateur qui va selectionner le combobox considere aura acces alors au divers choix repris par le code ci-dessus.

    Tout cela dans le but de faire le test suivant
    combobox1.value ="tout" et combobox2.value="animaux" et combobox3.value="tout"then
    intruction
    end if

    je precise que "tout" signe que qql soit la valeur trouvée, la comparaison dans le test sera " toujours VRAI"

    bon j'espere avoir ete le plus clair possible

    merci d'avance
    .

  2. #2
    Membre éclairé
    Profil pro
    maçon
    Inscrit en
    Novembre 2004
    Messages
    287
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Loire (Auvergne)

    Informations professionnelles :
    Activité : maçon

    Informations forums :
    Inscription : Novembre 2004
    Messages : 287
    Par défaut
    Je voudrais bien t'aider , mais relis toi c'est incompréhensible

  3. #3
    Membre éclairé
    Inscrit en
    Juillet 2007
    Messages
    502
    Détails du profil
    Informations forums :
    Inscription : Juillet 2007
    Messages : 502
    Par défaut test if condition1+condition2 then ????
    bonjour
    je me permets de reformuler ma question en relation àvec mon dernier post.
    je souheterai realiser un test avec If conditions then Instruction.
    jusque la, pas de probleme. (Tout cela pour trier des donnees)

    mais...............
    dans "conditions" je souhaite imbriquer plusieurs conditions comme
    SI objet =rond AND taille=grande AND couleur=rouge THEN instructions.

    seulement la condition objet et /ou taille et/ou couleur peut etre vide .
    donc le test si dessus sera toujours faux .
    je souhaite que si une ou des conditions est vide alors toutes les possibilites de la condition soient considerées comme bonnes.

    si objet="" cela revient à dire que objet=rond ou carre ou ovale et.....


    je precise que le chaque condition est selectionnée à l'aide d'un combobox
    donc celui est initialise par le code suivant

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Dim jj As Integer 'debut de la procedure pour eliminer les doublons 
    For jj = 2 To Sheets("course").Range("G65536").End(xlUp).Row
    ComboBox3 = Sheets("course").Range("G" & jj)
    If ComboBox3.ListIndex = -1 Then ComboBox3.AddItem Sheets("course").Range("G" & jj)
    Next jj 'fin de la procedure doublon

    conclusion
    je n'arrive pas a faire ce test multiple lors une condition peut prendre toutes les valeurs possible ?

    merci

  4. #4
    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
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    If Un xor deux xor trois then

  5. #5
    Membre éclairé
    Inscrit en
    Juillet 2007
    Messages
    502
    Détails du profil
    Informations forums :
    Inscription : Juillet 2007
    Messages : 502
    Par défaut test if condition1+condition2 then ????
    bonsoir
    si j'ai compris

    si taille=rond xor taille=carre and taille=petite xor taille= grande and couleur=rouge xor couleur=vert xor couleur=blanc then instruction ????

  6. #6
    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
    Par défaut
    Comme je ne comprends pas ton And au milieu, je reprends ta question
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    if combobox1.value ="tout" xor combobox2.value="animaux" xor combobox3.value="tout" then
         'C'est vrai
         else
         'c'est faux
    endif
    si seulement l'un d'eux est vrai tu es "dans le vrai" mais si aucun d'eux n'est vrai ou qu'il y a plusieurs vrais alors tu es dans le faux

    Edit
    Teste ça
    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
    Sub CestPasVrai()
    un = True
    deux = False
    trois = False
    quatre = False
    If un Xor deux Xor trois Xor quatre Then
       MsgBox True
       Else
       MsgBox False
    End If
    un = True
    deux = True
    trois = False
    quatre = False
    If un Xor deux Xor trois Xor quatre Then
       MsgBox True
       Else
       MsgBox False
    End If
     
    End Sub

  7. #7
    Membre éclairé
    Inscrit en
    Juillet 2007
    Messages
    502
    Détails du profil
    Informations forums :
    Inscription : Juillet 2007
    Messages : 502
    Par défaut test if condition1+condition2 then ????
    j'apporte qql precision

    if condition1 AND condition2 AND condition3 (A)

    donc je dois test 3 conditions(OBJET,TAILLE et COULEUR pour excecuter une intruction.

    la condition1 appeler OBJET contient les choix possibles :CARRE ou ROND.
    la selection est effectuée via combobox1

    la condition2 appeler TAILLE contient les choix possibles :GRAND , PETIT ou MOYEN.la selection est effectuée via combobox2

    la condition3 appeler COULEUR contient les choix possibles :rouge,vert,noir ou jaune. la selection est effectuée via combobox3

    En sachant que l'utlisateur pourra ne pas repondre. En consequence le combobox correspondant à la condition non selectionner devra renvoye dans le TEsT (A) renvoye toujour VRAI (toutes lesvaleurs seront acceptées)

  8. #8
    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
    Par défaut
    Je ne comprends pas cette phrase
    En consequence le combobox correspondant à la condition non selectionnée devra renvoyer dans le TEsT (A) renvoye toujour VRAI (toutes lesvaleurs seront acceptées)
    en rouge
    A+

  9. #9
    Membre éclairé
    Inscrit en
    Juillet 2007
    Messages
    502
    Détails du profil
    Informations forums :
    Inscription : Juillet 2007
    Messages : 502
    Par défaut test if condition1+condition2 then ????
    En consequence le combobox correspondant à la condition non selectionnée devra renvoyer dans le TEsT (A) renvoye toujour VRAI (toutes lesvaleurs seront acceptées)


    comme tu l'as compris chaque combobox permet de choisir un element de reponse parmi plusieurs
    couleur = Rouge
    forme=carre
    taille grande
    mais l'utilisateur pourra faire le test que sur 2 condition sur 3
    exemple
    couleur = rouge
    forme = toute (toute les possibilites seront donc acceptées d'ou ma phrase)
    taille=grande

  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
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Ok = (a + b) * (a + c) * (b + c)
    Si tu as abc tu as aussi ok
    Ça t'aide ? (pas besoin de xor)

    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
    Sub test()
    Dim a As Boolean, b As Boolean, c As Boolean
    'Ok = (a + c) * (a + b)  * (b + c)
    a = True
    b = False
    c = True
    MsgBox "a = True" & vbCr & "b = False" & vbCr & "c = True" & _
            vbCr & "= " & ((a And b) Or (a And c) Or (b And c))
    a = True
    b = True
    c = False
    MsgBox "a = True" & vbCr & "b = True" & vbCr & "c = False" & _
            vbCr & "= " & ((a And b) Or (a And c) Or (b And c))
     
    a = False
    b = True
    c = True
    MsgBox "a = False" & vbCr & "b = True" & vbCr & "c = True" & _
             vbCr & "= " & ((a And b) Or (a And c) Or (b And c))
     
    a = False
    b = False
    c = True
    MsgBox "a = False" & vbCr & "b = False" & vbCr & "c = True" & _
             vbCr & "= " & ((a And b) Or (a And c) Or (b And c))
     
    a = True
    b = False
    c = False
    MsgBox "a = True" & vbCr & "b = False" & vbCr & "c = False" & _
            vbCr & "= " & ((a And b) Or (a And c) Or (b And c))
     
    a = True
    b = True
    c = True
    MsgBox "a = True" & vbCr & "b = True" & vbCr & "c = True" & _
            vbCr & "= " & ((a And b) Or (a And c) Or (b And c))
     
    End Sub

  11. #11
    Membre éclairé
    Inscrit en
    Juillet 2007
    Messages
    502
    Détails du profil
    Informations forums :
    Inscription : Juillet 2007
    Messages : 502
    Par défaut test if condition1+condition2 then ????
    heu,....
    ouais sur le principe ok
    mais avec les outils if condition then ou elseif

    tu as une idee de la structure du test
    ?

  12. #12
    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
    Par défaut
    Je suppose qu'aucune sélection entraîne ComboBoxn.value = "" 'si c'est "tout" ça complique...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    Dim a As Boolean, b As Boolean, c As Boolean
    Dim ok as boolean
    a = Combobox.value <> ""
    b = comboBox.value <> ""
    c = Combobox.value <> ""
    ok = (a and b) or (a and c) or (b and c)
    If ok then
         'Ton code
    Avec tout, je regarde ce qu'on peut faire
    Tu dis

    Edit
    Si le traitement est différent selon les cas, tu peux faire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    Select case true
        Case a and b and c
           'Ton code
        Case a and b and not c
           'Ton code
        Case a and c and not b
           'Ton code
        Case b and c and not a
           'Ton code
        case else
            'les autres
    End select

  13. #13
    Membre éclairé
    Inscrit en
    Juillet 2007
    Messages
    502
    Détails du profil
    Informations forums :
    Inscription : Juillet 2007
    Messages : 502
    Par défaut test if condition1+condition2 then ????
    tiens j'ai ecrit un bout de code rapidementPièce jointe 19599

  14. #14
    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
    Par défaut
    Désolé mais j'avais commencé à faire quelque chose dans un userform (que je préfère aux listes, combo et autres placés dans une feuille de calculs)
    Le principe reste le même alors je te joins ce que j'ai fait
    Pièce jointe 19601
    J'espère que tu pourras t'en inspirer...

  15. #15
    Membre éclairé
    Inscrit en
    Juillet 2007
    Messages
    502
    Détails du profil
    Informations forums :
    Inscription : Juillet 2007
    Messages : 502
    Par défaut test
    ok merci
    je regarde cela

  16. #16
    Membre éclairé
    Inscrit en
    Juillet 2007
    Messages
    502
    Détails du profil
    Informations forums :
    Inscription : Juillet 2007
    Messages : 502
    Par défaut initialisation combobox
    bonsoir à tous
    Unp eu dure cette semaine, mais je viens de regarde le code et cela est qql peu difficile de l'adapte car il me faut selectionner les combobox
    j'ai reflezchi à la possibilite d'activez le combobox.enable via un chekbox .
    autrement dit si checkbox cochez alors combobox actif et retenu dans la chaine de condition precedement citée !
    mais le combobox.enable =(true/false)ne reagit pas au chekbox ?

    help please

  17. #17
    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
    Par défaut
    Tu as une autre solution sans userform, sans combo box, sans textbox Résultat, bref, sans rien, tout le code étant dans la feuille de code de la feuille de calculs. Tu veux ?

    Edit
    Finalement, comme ce n'était rien à faire mais bien plus long à expliquer, je l'ai fait Pièce jointe 19748 Je suis pour la simplification
    Essai de comprendre le code... c'est mieux
    Tu dis
    A+

    Edit (re)
    Je m'aperçois que je n'ai pas été très explicite sur l'utilisation.
    Tu sélectionnes ton choix dans chacune des trois colonnes et le résultat de tes choix se place à droite dans les trois colonnes décalées.
    Pour réinitialiser un choix, il suffit de sélectionner l'en-tête de la colonne concernée.
    A+

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

Discussions similaires

  1. Initialiser Combobox dans une cellule
    Par Charles1104 dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 04/12/2012, 08h09
  2. Combobox dans TabItem : impossible d'initialiser Combobox.SelectedIndex
    Par adaneels dans le forum Windows Presentation Foundation
    Réponses: 27
    Dernier message: 14/04/2009, 10h58
  3. Initialisation ComboBox Excel
    Par daniel_a1 dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 07/06/2008, 11h32
  4. Utilisation et initialisation Combobox
    Par Jeanvaljean44 dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 07/12/2007, 19h58
  5. [VB]Combobox initialisation au démarrage.
    Par ept35 dans le forum VB 6 et antérieur
    Réponses: 7
    Dernier message: 15/02/2006, 08h18

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