afficher contenu dans combobox en column

Blafi

XLDnaute Occasionnel
Bonsoir à tous,

Dans le fichier joint qui est un extrait d'un fichier que j'essaye de terminer, j'ai dans la feuille "sorties effectuées" une liste de dates de sorties au ski dans les cellules D2 à D....

J'ai donné à cette liste un nom variable en longueur [Sorties] défini par =DECALER('Sorties Effectuées'!$D$2;;;;NBVAL('Sorties Effectuées'!$2:$2)-3) afin que ce nom s'adapte au fur et à mesure que des dates sont rajoutées après D2.

Je veux, dans un USF (USFConsListe), afficher dans une combobox la liste des dates de sortie qui porte donc le nom [Sorties], mais il faut que ma combobox affiche ces dates (qui sont en ligne dans la feuille) en colonne.

J'ai donc défini dans l'userform initialize la combobox.column=[Sorties].value...

Tout va très bien lorsque j'ai plusieurs dates de sorties dans ma feuille.. par contre lorsqu'il n'y a qu'une date, j'obtiens au moment d'afficher le userform une erreur du genre "impossible de définir l'index colonne" (en anglais naturellement).

Je pense que cela vient du fait de mon nom "Sorties" en "décaller" qui ne peut me donner qu'une seule valeur...

Lorsque la cellule D2 est vide, j'ai déja mis un test qui arrète la procédure. Je voudrais donc maintenant rajouter un test lorsqu'il n'y a qu'une seule valeur, et lors de l'initialize de l'USF me permettrait d'afficher la seule date présente après avoir conté le nombre de valeurs présentes dans [sortie]... mais je ne connais pas la manip qui me permettrai de compter ce nombre de valeurs en VBA...

Comment procéder ?

NOTA : il est vrai que je peux contourner le pb en mettant en premier une fausse date de sortie car dès qu'il y a valeurs out va bien.. mais ça me pose ensuite d'autres pb.

Merci d'avance de votre aide..
 

Fichiers joints

ROGER2327

XLDnaute Barbatruc
Re : afficher contenu dans combobox en column

Bonjour Blafi
Essayez ceci :
Code:
[COLOR=DarkSlateGray][B]Private Sub UserForm_Initialize()
Dim x()
    Sheets("Sorties Effectuées").Visible = True
    Sheets("Sorties Effectuées").Unprotect
    x = [Sorties].Value
    ReDim Preserve x(1 To 1, 1 To UBound(x, 2) - 1)
    ComboBox1.Column = x
End Sub[/B][/COLOR]
en modifiant Sorties :
Code:
[COLOR=DarkSlateGray][B]=DECALER('Sorties Effectuées'!$D$2;;;;NBVAL('Sorties Effectuées'!$2:$2)-[COLOR=Red]2[/COLOR])[/B][/COLOR]
ROGER2327
#4673


Jeudi 5 Sable 138 (Sainte Savate, avocate, SQ)
15 Frimaire An CCXIX
2010-W48-7T22:30:17Z
 
Dernière édition:

ROGER2327

XLDnaute Barbatruc
Re : afficher contenu dans combobox en column

Re-bonjour Blafi
Pour éviter un plantage si aucune date n'est saisie, essayez :
Code:
[COLOR=DarkSlateGray][B]Private Sub UserForm_Initialize()
Dim x()
    Sheets("Sorties Effectuées").Visible = True
    Sheets("Sorties Effectuées").Unprotect
    x = [Sorties].Value
    If UBound(x, 2) > 2 Then ReDim Preserve x(1 To 1, 1 To UBound(x, 2) - 2)
    ComboBox1.Column = x
End Sub[/B][/COLOR]
en modifiant Sorties :
Code:
[COLOR=DarkSlateGray][B]=DECALER('Sorties Effectuées'!$D$2;;;;NBVAL('Sorties Effectuées'!$2:$2)-[COLOR=Red]1[/COLOR])[/B][/COLOR]
Mais c'est du bricolage !
ROGER2327
#4675


Jeudi 5 Sable 138 (Sainte Savate, avocate, SQ)
15 Frimaire An CCXIX
2010-W48-7T23:16:28Z
 

Blafi

XLDnaute Occasionnel
Re : afficher contenu dans combobox en column

Bonjour,

Merci Roger, je vais essayer ces propositions que je lis seulement ce matin....

J'ai en effet un pb du plantage lorsqu'il ya seulement 1 date dans la liste des sorties, lorsqu'il n'y en a pas du tout mon if faisant sortir de la procédure avait résolu le pb..

Je regarde et je vous tiens au courant..

Bonne journée et a ++
 

ROGER2327

XLDnaute Barbatruc
Re : afficher contenu dans combobox en column

Re…
(…)
J'ai en effet un pb du plantage lorsqu'il ya seulement 1 date dans la liste des sorties, lorsqu'il n'y en a pas du tout mon if faisant sortir de la procédure avait résolu le pb..
(…)
Dans ce cas, la deuxième proposition n'a plus lieu d'être, et c'est tant mieux. (Je la trouve moche.)
ROGER2327
#4677


Vendredi 6 Sable 138 (Saint Navet et Perruque, humanistes, SQ)
16 Frimaire An CCXIX
2010-W49-1T09:28:41Z
 

Créez un compte ou connectez vous pour répondre

Vous devez être membre afin de pouvoir répondre ici

Créer un compte

Créez un compte Excel Downloads. C'est simple!

Connexion

Vous avez déjà un compte? Connectez vous ici.

Haut Bas