Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Mémorisation du choix dans une liste déroulante

8 réponses
Avatar
Pierre F.
Bonjour toutes et tous;

J'ai créé une liste déroulante (avec l'outils formulaire).
Chaque choix de cette liste (sauf le 1er) lance une macro qui me permet
d'imprimer selon plusieurs modèles.

Quand, dans ma liste, je fais le choix 5, par exemple ("Visible"), ce
choix reste présent et affiché dans le champ bordé par la flèche de la
liste déroulante.

C'est d'autant plus énervant que si je veux utiliser une seconde fois ce
même choix... il reste inactif; je dois faire un autre choix puis
revenir au 5 pour qu'il relance la macro.

Y'a-t-il un moyen pour forcer l'affichage systématique du premier choix?

http://cjoint.com/?jitdImVdMg

Merci.

Cordialement,
Pierre F.

8 réponses

Avatar
FFO
Salut Pierre

Tu pourrais inclure en fin de tes macros une instruction du style :

Range("A1") = "Libellé de ton premier choix"

Range("A1") étant la cellule de ta liste déroulante à adapter à ton cas

La valeur de cette cellule en fin de chaque macro reprendrait ainsi celle de
ton premier choix

Celà devrait faire



Bonjour toutes et tous;

J'ai créé une liste déroulante (avec l'outils formulaire).
Chaque choix de cette liste (sauf le 1er) lance une macro qui me permet
d'imprimer selon plusieurs modèles.

Quand, dans ma liste, je fais le choix 5, par exemple ("Visible"), ce
choix reste présent et affiché dans le champ bordé par la flèche de la
liste déroulante.

C'est d'autant plus énervant que si je veux utiliser une seconde fois ce
même choix... il reste inactif; je dois faire un autre choix puis
revenir au 5 pour qu'il relance la macro.

Y'a-t-il un moyen pour forcer l'affichage systématique du premier choix?

http://cjoint.com/?jitdImVdMg

Merci.

Cordialement,
Pierre F.



Avatar
JB
Bonsoir,

Sub Imprime()
Application.Run "Impr" & [C1]
Range("B1").Select
[C1] = 1
End Sub

JB

On 8 sep, 19:04, "Pierre F." wrote:
Bonjour toutes et tous;

J'ai créé une liste déroulante (avec l'outils formulaire).
Chaque choix de cette liste (sauf le 1er) lance une macro qui me permet
d'imprimer selon plusieurs modèles.

Quand, dans ma liste, je fais le choix 5, par exemple ("Visible"), ce
choix reste présent et affiché dans le champ bordé par la flèche de la
liste déroulante.

C'est d'autant plus énervant que si je veux utiliser une seconde fois ce
même choix... il reste inactif; je dois faire un autre choix puis
revenir au 5 pour qu'il relance la macro.

Y'a-t-il un moyen pour forcer l'affichage systématique du premier choix?

http://cjoint.com/?jitdImVdMg

Merci.

Cordialement,
Pierre F.


Avatar
LSteph
Bonsoir,
Compte tenu du fait que tu as utilisé un Combobox de la BO Formulaire ce
qui est beaucoup moins pratique
C'est déjà bien ce que tu as pu faire.
Dans cette configuration , du moment que le déroulant affiche déjà cette
valeur il suffit de cliquer sur Imprimer.

Sinon prends l'habitude d'utiliser la BO Contrôles.

@+

lSteph

Bonjour toutes et tous;

J'ai créé une liste déroulante (avec l'outils formulaire).
Chaque choix de cette liste (sauf le 1er) lance une macro qui me permet
d'imprimer selon plusieurs modèles.

Quand, dans ma liste, je fais le choix 5, par exemple ("Visible"), ce
choix reste présent et affiché dans le champ bordé par la flèche de la
liste déroulante.

C'est d'autant plus énervant que si je veux utiliser une seconde fois ce
même choix... il reste inactif; je dois faire un autre choix puis
revenir au 5 pour qu'il relance la macro.

Y'a-t-il un moyen pour forcer l'affichage systématique du premier choix?

http://cjoint.com/?jitdImVdMg

Merci.

Cordialement,
Pierre F.


Avatar
Pierre F.
Bonsoir,
Dans cette configuration , du moment que le déroulant affiche déjà cette
valeur il suffit de cliquer sur Imprimer.

Sinon prends l'habitude d'utiliser la BO Contrôles.


Merci pour vos idées et vos conseils.

La réponse de JB résout tout à fait mon problème :-)

J'ai plus de difficultés à utiliser la BO contrôle, c'est pourquoi
j'avais pris celle du formulaire.

Cordialement,
Pierre F.

Avatar
MichDenis
Dans la procédure suivante :

Feuil1 n'est pas le nom de l'onglet mais la valeur de
la propriété "Name" de l'objet "Feuille" où le combobox

J'ai supposé que ce code serait copié dans le module où
le combobox est situé.

Le nom du combobox dans l'exemple est : "comb1"
tu dois l'adapter à ton application

J'ai aussi supposé que toutes tes macros étaient situées dans
un module STANDARD.

Pour afficher à la fin de la procédure, le premier item du combobox
Tu as cette ligne de code .ListIndex = 1
Si tu désires que ton combobox soit vide à la fin de l'opération :
.ListIndex = 0


Il ne te reste plus qu'à attacher cette macro à ton combobox.

'----------------------------------
Sub Test()
Dim x As String
With Me.Shapes("cmb1").OLEFormat.Object
If .ListIndex <> 0 Then
x = .List(.ListIndex)
Application.Run x
.ListIndex = 1
End If
End With
End Sub
'----------------------------------


P.S. Ce n'est pas parce qu'un combobox émane de la boîte d'outils formulaire
que l'on ne peut pas le manipuler par programmation. Évidemment il est
plus limité que sa consoeur de la barre d'outils "Contrôle" qui elle a les
événements en plus.





"Pierre F." a écrit dans le message de news:
88797$46e2d63a$55da2ea5$
Bonjour toutes et tous;

J'ai créé une liste déroulante (avec l'outils formulaire).
Chaque choix de cette liste (sauf le 1er) lance une macro qui me permet
d'imprimer selon plusieurs modèles.

Quand, dans ma liste, je fais le choix 5, par exemple ("Visible"), ce
choix reste présent et affiché dans le champ bordé par la flèche de la
liste déroulante.

C'est d'autant plus énervant que si je veux utiliser une seconde fois ce
même choix... il reste inactif; je dois faire un autre choix puis
revenir au 5 pour qu'il relance la macro.

Y'a-t-il un moyen pour forcer l'affichage systématique du premier choix?

http://cjoint.com/?jitdImVdMg

Merci.

Cordialement,
Pierre F.
Avatar
LSteph
Bonjour,

Tout a fait d'accord "Maître" c'est pas parceque la vieille voiture est
au garage qu'elle ne peut pas rouler.
Cela dit je préfère utiliser la plus récente.

événements en plus.
Et des propriétés plus étendues et facilement accessibles aussi,..

Non..?!

:-)

--
LSteph


P.S. Ce n'est pas parce qu'un combobox émane de la boîte d'outils formulaire
que l'on ne peut pas le manipuler par programmation. Évidemment il est
plus limité que sa consoeur de la barre d'outils "Contrôle" qui elle a les
événements en plus.



Avatar
MichDenis
| Cela dit je préfère utiliser la plus récente.

Tu peux reléguer tout ce que tu veux aux oubliettes...
Attention de ne pas cultiver l'ignorance !

Maître
Avatar
LSteph
Bonjour MD,

Le souci d'aller vers ce qui paraît plus aisé ne se veut pas passer par
le mépris du reste, mais ne serait-ce que pour l'apparence ou ressenti
de ce qui pourrait en ressortir ou le penchant dans lequel on pourrait
tomber sans doute, je prends bonne note de ce docte conseil!

Merci.

--
lSteph

| Cela dit je préfère utiliser la plus récente.

Tu peux reléguer tout ce que tu veux aux oubliettes...
Attention de ne pas cultiver l'ignorance !

Maître