boite de dialogue
#1
Débutant XLPages

Inscription: 19/06/2014
De PARIS

Messages: 9

Système d'exploitation:
PC
Version Excel utilisée:
2007
Posté le : 19-06-2014 21h19

bonjour à tous,

Depuis plusieurs années, j'ai arrêté de programmer et ne sait plus comment faire avec ma boite de dialogue !

Je m'explique :

Je voudrais que lorsque la combobox a été selectionnée sur un N° l'on puisse saisir le NOM-A les Points A-B et que le NOM-B s'affiche sans être saisie dans la boite de dialogue sur la ligne correspondante !

Merci à l'avance !

 

Pièce jointe:
xls Essai-Saisie.xls   [ Taille: 56.00 Ko - Téléchargements: 373 ]
Hors Ligne
Rapport   Haut 

Re: boite de dialogue
#2
Webmestre

Inscription: 18/05/2006
De Saône-et-Loire (71)

Messages: 1539

Système d'exploitation:
PC
Version Excel utilisée:
97, 2000, 2002, 2003, 2007, 2010, 2013, 2016 et 365
Posté le : 19-06-2014 22h10

Bonsoir JACQUOTA, bienvenue sur XLpages.com

Tu trouveras en pièce jointe une façon d'aborder ce type de situation (si j'ai bien interprété ta demande).

J'ai utiliser le code VBA suivant, dans le module de code du Userform :

Option Explicit

' myDearFriend!  -  www.mdf-xlpages.com
' 19/06/2014

Private Sub UserForm_Initialize()
    'INITIALISATION DE LA COMBO
    With ComboBox1
        'On définit le style de combo (pas de saisie utilisateur)
        .Style = fmStyleDropDownList
        'On définit le nombre de colonnes à 5
        .ColumnCount = 5
        'On lui affecte toute la plage de valeurs
        .List() = Sheets("Feuil1").Range("A3:E12").Value
        'On masque les 4 dernières colonnes de la combo
        .ColumnWidths = ";0;0;0;0"
        'On sélectionne la première ligne par défaut
        .ListIndex = 0
    End With
End Sub

Private Sub ComboBox1_Change()
Dim Lign As Byte
    'UNE LIGNE DE COMBO EST SELECTIONNEE
    With ComboBox1
        Lign = .ListIndex
        'On attribue à chaque TextBox les valeurs stockées dans la combo
        TextBox1.Value = .List(Lign, 1)     'NOM-A
        TextBox2.Value = .List(Lign, 4)     'NOM-B
        TextBox3.Value = .List(Lign, 2)     'POINT A
        TextBox4.Value = .List(Lign, 3)     'POINT B
    End With
End Sub

Private Sub CommandButton1_Click()
Dim Lign As Byte
    'VALIDER
    'On réaffecte les valeurs des TextBox dans la combo
    '(c'est l'inverse de ComboBox1_Change() ci-dessus)
    With ComboBox1
        Lign = .ListIndex
        'On attribue à chaque TextBox les valeurs stockées dans la combo
        .List(Lign, 1) = TextBox1.Value     'NOM-A
        .List(Lign, 4) = TextBox2.Value     'NOM-B
        .List(Lign, 2) = TextBox3.Value     'POINT A
        .List(Lign, 3) = TextBox4.Value     'POINT B
        'On dépose les valeurs de la combo dans la feuille
        Sheets("Feuil1").Range("A3:E12").Value = .List()
    End With
    Unload Me
End Sub

Private Sub CommandButton2_Click()
    'ANNULER
    Unload Me
End Sub
 

En espérant que ça puisse te dépanner.

Cordialement,

Pièce jointe:
xls PourJACQUOTA.xls   [ Taille: 55.00 Ko - Téléchargements: 454 ]

Didier_mDF
Image redimensionnée
Le Webmaster

La réponse vous satisfait ? Merci de revenir solder le sujet en [résolu], voir ce lien
Hors Ligne
Rapport   Haut 

Re: boite de dialogue
#3
Débutant XLPages

Inscription: 19/06/2014
De PARIS

Messages: 9

Système d'exploitation:
PC
Version Excel utilisée:
2007
Posté le : 19-06-2014 23h26

Merci beaucoup pour ton dévouement

 

Lorsque je clique sur le bouton saisie une erreur intervient ( erreur d'exécution 1004 )

 

bonne nuit !

Hors Ligne
Rapport   Haut 

Re: boite de dialogue
#4
Webmestre

Inscription: 18/05/2006
De Saône-et-Loire (71)

Messages: 1539

Système d'exploitation:
PC
Version Excel utilisée:
97, 2000, 2002, 2003, 2007, 2010, 2013, 2016 et 365
Posté le : 20-06-2014 00h48

Re,

 

Tu as raison, il y a visiblement un problème avec une version Excel supérieure à 2003 (ce qui est ton cas apparemment). J'avais fait mes tests sous XL2003 sans aucun problème, mais je viens de tester sous XL2007 et XL2010 : plantages !

 

Cela dit, curieusement, je n'obtiens pas le même message d'erreur que toi :

Citation :

JACQUOTA a écrit :

Lorsque je clique sur le bouton saisie une erreur intervient ( erreur d'exécution 1004 )

Moi, j'obtiens une erreur d'exécution '70'.   indecision

 

Le comble, c'est que pour régler ce problème, je ne touche à rien dans le code, je me contente de supprimer ta ComboBox dans le Userform et de la recréer aussitôt : plus aucun plantage ! (testé à nouveau sous XL2007 et XL2010)

 

Là j'avoue que je reste perplexe quant à ta configuration exacte et l'origine du contrôle ComboBox utilisé en premier lieu, c'est assez curieux comme situation... C'est bien la première fois que je rencontre ce type de bug.

 

Je te mets en pièce jointe le nouveau fichier (après échange du contrôle ComboBox).

 

Bien cordialement,

Pièce jointe:
xls PourJACQUOTA2.xls   [ Taille: 43.50 Ko - Téléchargements: 447 ]

Didier_mDF
Image redimensionnée
Le Webmaster

La réponse vous satisfait ? Merci de revenir solder le sujet en [résolu], voir ce lien
Hors Ligne
Rapport   Haut 

Re: boite de dialogue
#5
Débutant XLPages

Inscription: 19/06/2014
De PARIS

Messages: 9

Système d'exploitation:
PC
Version Excel utilisée:
2007
Posté le : 20-06-2014 08h17

Merci beaucoup ! cela marche ! comme toi je ne comprenais pas !

 

Autre demande : je m'excuse de ne pas créer une autre demande !

 

Je voudrais mélanger des N° dans l'ordre ici 1 à 10 ( mais cela peut-être plus de 10)

 

Voir fichier !

 

Merci beaucoup encore une fois de ton aide !

Pièce jointe:
xls Classement-N°.xls   [ Taille: 36.50 Ko - Téléchargements: 351 ]
Hors Ligne
Rapport   Haut 


Vous pouvez voir les sujets.
Vous ne pouvez pas débuter de nouveaux sujets.
Vous ne pouvez pas répondre aux contributions.
Vous ne pouvez pas éditer vos contributions.
Vous ne pouvez pas effacez vos contributions.
Vous ne pouvez pas ajouter de nouveaux sondages.
Vous ne pouvez pas voter en sondage.
Vous ne pouvez pas attacher des fichiers à vos contributions.
Vous ne pouvez pas poster sans approbation.

[Recherche avancée]


Qui consulte actuellement ce sujet ?   1 Utilisateur(s) anonymes