Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Combobox/Rowsource sous Excel (sans userform)

B

ben

Guest
Bonjour aux cracks du VBA (thierry particulièrement),

Je préfère préciser que je ne suis pas débutant, j ai déjà
fait un petit programme assez évolué par des userforms.

Le problème c est que là je travaille en VBA avec notamment
des combobox directement sous Excel (contrainte du boulot) et ça change tout. J ai fouillé dans ce forum et je ne crois pas que quelqu'un ait soulevé ce problème

Ainsi j ai mis les valeurs d initialisation (additem) des combobox dans le ThisWorkbook au lieu du traditionnel Private Sub userform_initialize puis sheets(« X »).activate. Sinon les données des combobox ne se
remplissent pas ou alors se remplissent autant de fois que on change la valeur de la combobox. Avec les AddItems (les combobox CBloc et CBmonth), ca marche parfaitement.

Le problème vient de ma combobox à données variables c est
à dire dont le contenu s adapte aux valeurs présentes dans
une colonne d excel et qui s arrête donc à la dernière
ligne remplie.


La formule ci dessous qui marche parfaitement sous une userform classique ne marche plus lorsqu on le place dans le ThisWorkbook :
Dim DerCell As String
DerCell = Sheets("Report").range("B16").End(xlDown).Address
Sheets("Report").CBact.RowSource = "B17:" & DerCell

Je vous remercie (beaucoup) pour votre aide éventuelle

PS : Je sais que vous n'aimez pas les fichiers joints mais
si vous en avez besoin, il ne fait que 27ko compressé.

PS2 : voilà le code complet :

>>>>dans ma feuille REPORT :

Private Sub CBloc_Change()

Dim Location As Variant

Location = CBloc.Value
range("Report!C7").Value = Location

End Sub

Private Sub CBmonth_Change()

Dim Month As Variant

Month = CBmonth.Value
range("Report!C8").Value = Month

End Sub

Private Sub CBact_Change()

Dim Activity As Variant

Activity = CBact.Value
range("Report!C9").Value = Activity

End Sub


>>>>> dans mon classeur THISWORKBOOK :

Private Sub Workbook_Open()

'Combo choix des loc
Sheets("Report").CBloc.AddItem ("Localizations")
Sheets("Report").CBloc.AddItem ("SGPM Paris")
Sheets("Report").CBloc.AddItem ("S.G. UK")
Sheets("Report").CBloc.AddItem ("Europe >")
Sheets("Report").CBloc.AddItem ("America >")
Sheets("Report").CBloc.AddItem ("Asia >")

'Combo choix du mois
Sheets("Report").CBmonth.AddItem ("Periods")
Sheets("Report").CBmonth.AddItem ("January")
Sheets("Report").CBmonth.AddItem ("February")
Sheets("Report").CBmonth.AddItem ("March")
Sheets("Report").CBmonth.AddItem ("April")
Sheets("Report").CBmonth.AddItem ("May")
Sheets("Report").CBmonth.AddItem ("June")
Sheets("Report").CBmonth.AddItem ("July")
Sheets("Report").CBmonth.AddItem ("August")
Sheets("Report").CBmonth.AddItem ("September")
Sheets("Report").CBmonth.AddItem ("October")
Sheets("Report").CBmonth.AddItem ("November")
Sheets("Report").CBmonth.AddItem ("December")

'Combo choix activities
Sheets("Report").Select

Dim LastCell As String
LastCell = range("Report!B15").End(xlDown).Address
CBact.RowSource = "Report!B16:" & LastCell

End Sub
 
X

Xavier

Guest
Bonsoir,

c'est bien le meme Xavier que le fil en question.

Je rajoute le X en C3

et je vous annonce echec et mat, sorry touché-coulé,...

Enfin bref gagné

Merci Thierry pour tes conseils en passant.

Xavier
 
@

@+Thierry

Guest
Héhéhé Xavier !

C'est sympa... Bientôt... quand David aura dépassé ses problèmes servers et PHP, la partie membre permettra d'un peu plus avoir une communauté de personnes pour un peu se situer...

@+Thierry
 
B

ben

Guest
Comme sur mon forum (dont je ne donnerais pas l'adresse afin de ne pas être accusé de pub), l'ambiance est très sympa ici.

Même si je n'ai pas de VBA à faire, je viendrais de temps en temps. En fait si je vais peut être avoir du VBA à faire vu que je développe des macros (simples) au boulot pour automatiser certaines tâches (je suis stagiaire).

Au fait je n'ai pas détruit mon clavier. Ouf ! je suis parti avant de le faire et ensuite quand je suis rentré chez moi, j'étais calmé. J'ai écouté un groupe de rock dans le train et ca m'a permis de me défoulé mentalement. D'ailleurs je vous donne l'adresse pour le télécharger, profitez en c'est gratuit et c'est bon :
http://julyforkings.com/music/normal_life_128kBit.mp3

Un grand merci à tous et certainement à la semaine prochaine pour de nouvelles aventures.
 
B

ben

Guest
ça marche !!!

Donc finalement si je résume j'ai perdu une journée de boulot à cause d'un mot : RowSource au lieu de ListFillRange. Et encore heureusement que vous êtes là, sinon la semaine suivante ou au moins une partie aurait été perdu.

Merci, merci, merci.
 
B

ben

Guest
Salut Thierry

Merci d'avoir suivi mon conseil. Si tu veux en écouter plus de ce groupe tu peut essayer believe, un autre titre de l'album :
http://julyforkings.com/music/believe_128kBit.mp3
 

Discussions similaires

Réponses
49
Affichages
1 K
Réponses
6
Affichages
394
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…