Bonjour,
j'ai dans un userform, créé une toupie pour pouvoir à l'aide de celle ci faire défiller des années.
Cependant je n'arrive pas à lier cette cellule à la toupie de façon à ce que je puisse faire défiler les dates.
Quelqu'un aurait une idée?








Bonjour,
j'ai dans un userform, créé une toupie pour pouvoir à l'aide de celle ci faire défiller des années.
Cependant je n'arrive pas à lier cette cellule à la toupie de façon à ce que je puisse faire défiler les dates.
Quelqu'un aurait une idée?
Salut
Un fihcier démo serait le bienvenu pour éclairer, "Toupie" ca me dit rien
++
Qwaz
MagicQwaz := Harry Potter la baguette en moins
Le monde dans lequel on vit
Ma page perso DVP
Dernier et SeulTutoriel : VBA & Internet Explorer
Dernière contribution : Lien Tableau Structuré et UserForm
L'utilisation de l’éditeur de message








Voila en fichier joint ce à quoi ressemble une toupie![]()
Bonsoir, tu n'aurais pas aussi court d'inserer un dtpicker ?
Cordialement,
Dom
_____________________________________________
Vous êtes nouveau ? pour baliser votre code, cliquer sur cet exemple : Anomaly
pensez à cliquer sur :resolu: si votre problème l'est
Par contre, il est désagréable de voir une discussion résolue sans message final du demandeur (satisfaction, désarroi, remerciement, conclusion...)








Qu'est-ce qu'un dtpicker?
Salut
... j'ai un peu honte, mais je n'ai jamais utilisé, ni même vu (du moins le nom de) se composant ...
Pour le DtPicker tu trouveras plus d'info ici
++
Qwaz
MagicQwaz := Harry Potter la baguette en moins
Le monde dans lequel on vit
Ma page perso DVP
Dernier et SeulTutoriel : VBA & Internet Explorer
Dernière contribution : Lien Tableau Structuré et UserForm
L'utilisation de l’éditeur de message

Bonjour
Pourquoi veux-tu prendre les années dans une liste ?
Un exemple sans liste :
Un UserForm avec une toupie (SpinButton) et une zone de texte :
A l'initialisation, tu trouves l'année en cours dans la zone de texte.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 Private Sub SpinButton1_SpinDown() Me.txtAnnee.Value = Me.txtAnnee.Value - 1 End Sub Private Sub SpinButton1_SpinUp() Me.txtAnnee.Value = Me.txtAnnee.Value + 1 End Sub Private Sub UserForm_Initialize() Me.txtAnnee.Value = Year(Date) End Sub
Et en cliquant sur les boutons tu décrémentes ou incrémentes les années.
Philippe








Merci de l'info sur le dtpicker Qwazerty et peu de personne utilisent la toupie en effet!
Philippe JOCHMANS, je me suis mal exprimé quand je disais vouloir prendre les années dans une liste, je confondais avec une liste déroulante.
J'ai un problème avec le code, il fait une erreur dès le début sur cette ligne:
Je ne comprends pas pourquoi.
Code : Sélectionner tout - Visualiser dans une fenêtre à part Private Sub UserForm_Initialize()
J'ai remplacé cette ligne par la suivante:
Et là cela fonctionne pour cette partie mais il y a une autre erreur à la ligne suivante:
Code : Sélectionner tout - Visualiser dans une fenêtre à part Private Sub SpinButton1_Change()
Saurais-tu d'où peut provenir le problème?
Code : Sélectionner tout - Visualiser dans une fenêtre à part Private Sub SpinButton1_SpinDown()
Salut
Il te faudrait lire quelques tutoriels pour te familiariser avec l'environnement de développement je pense.
Si je ne fait pas d'erreur, tu as dut mettre le code tel que Philippe J te l'as donné, dans un Module. Hors ca ne fonctionne pas comme ça.
Si tu double-cliques sur ta toupie, une fenêtre de code va apparaître. Dans cette fenêtre en haut à droite tu as une liste déroulante avec les différents évènements liés au composant en question. Tu trouveras Spin_Change, Spin_SpinDown ....
Il en va de même pour ton userform, double-clique dessus et tu trouveras UserForm_Initialize dans la liste.
A++
Qwaz
MagicQwaz := Harry Potter la baguette en moins
Le monde dans lequel on vit
Ma page perso DVP
Dernier et SeulTutoriel : VBA & Internet Explorer
Dernière contribution : Lien Tableau Structuré et UserForm
L'utilisation de l’éditeur de message








C'est ce que j'ai effectivement fait.
Je sais qu'il faut adapter un code en fonction de ce que l'on a déjà fait, mais là j'ai du mal à percevoir ce qu'il faut changer.
Les listes déroulantes affichent en effet ce que tu me dis mais qu'est ce que je dois en faire?
MagicQwaz := Harry Potter la baguette en moins
Le monde dans lequel on vit
Ma page perso DVP
Dernier et SeulTutoriel : VBA & Internet Explorer
Dernière contribution : Lien Tableau Structuré et UserForm
L'utilisation de l’éditeur de message








Merci, mais je n'arrive toujours pas à saisir ce qu'il faut faire.
Je ne comprend pas ce qu'il faut faire: sélectionner SpinButton1 pour quoi faire?
Dois-je changer son nom dans le code?
Je ne saisie pas trop ce que tu ne comprends pas.
Je vais numéroter, comme ça tu diras ou tu as un soucis
1/Le but, c'est de mettre du code, qui s’exécutera au lancement du UserForm, sur un clique du bouton plus de la toupie et sur un clique du bouton moins de la toupie
2/Au lancement du UserForm, on veux que le TextBox contienne l'année en cours (2011)
3/Sur clique plus de la toupie on ajoute 1 au contenu du textbox (2011 -> 2012) et sur clique moins ... on retranche une année (2011 -> 2010).
4/Pour placer du code qui s’exécute lors d'un évènement précis, on choisi le composant qui déclenche l’évènement (1ere liste sur le scrennshot) et l’évènement que l'on veut utiliser (2eme liste sur le scrennshot).
5/par exemple on va prendre l'initialisation du textbox.
On souhaite le faire au lancement du UserForm, dans sa phase d'initialisation, on choisi donc le UserForm dans la 1ere liste, puis on choisi l’évènement Initialize dans la 2eme. Automatiquement VBA nous génère l’évènement sans code, tu obtiens donc
On va donc taper notre code ici, code qui sera executé lors de l'initialisation de la UserForm, on rajoute donc
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 Private Sub UserForm_Initialize() End Sub
ce qui au final nous donne
Code : Sélectionner tout - Visualiser dans une fenêtre à part Me.txtAnnee.Value = Year(Date)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 Private Sub UserForm_Initialize() Me.txtAnnee.Value = Year(Date) End Sub
MagicQwaz := Harry Potter la baguette en moins
Le monde dans lequel on vit
Ma page perso DVP
Dernier et SeulTutoriel : VBA & Internet Explorer
Dernière contribution : Lien Tableau Structuré et UserForm
L'utilisation de l’éditeur de message








Je comprends les étapes et c'est plus clair quant à la sélection des critères.
J'arrive au même schéma que tu me présentes et je fais cela pour chaque bouton de la toupie. Jusque là tout va bien. Mais au moment de lancer il me refait la même erreur qu'au départ sur la ligne:
Pourtant j'ai suivi exactement ce que tu as marqué et bien sélectionné les critères au départ.
Code : Sélectionner tout - Visualiser dans une fenêtre à part Private Sub UserForm_Initialize()
Autrement la "DATE" je remplace bien par 2011?
Salut
Non, Date est une fonction qui te retourne la date du jour, year elle te retourne l'année d'une date.
Ok pour l'erreur je pense comprendre d'ou elle vient.
La zone jaune pointe effectivement
mais si tu regarde bien,
Code : Sélectionner tout - Visualiser dans une fenêtre à part Private Sub UserForm_Initialize()est sélectionne. Si c'est le cas il faut que tu renommes ton TextBox.
Code : Sélectionner tout - Visualiser dans une fenêtre à part .txtAnnee
Pour le renommer, tu cliques droit dessus, menu contextuel tu clique sur "Propriétés" dans la fenêtre des propriétés, tu cherches Name et tu met txtAnnée (à la place de TextBox1).
Bonne nuit
++
Qwaz
MagicQwaz := Harry Potter la baguette en moins
Le monde dans lequel on vit
Ma page perso DVP
Dernier et SeulTutoriel : VBA & Internet Explorer
Dernière contribution : Lien Tableau Structuré et UserForm
L'utilisation de l’éditeur de message








Miracle!
Je te remercie de ta patience, bonne nuit
a+
Partager