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

Choix

8 réponses
Avatar
Jacquouille
Bonsoir
Je me souviens avoir lu ici une méthode de choix très élégante et très
pratique.
Elle remplaçait une série de SI ....
Exemple:
si c=1 ou si c = 2 ou si c = 3 ...
Tout cela était remplacé (en VBA) par un truc du genre:
"un mot" (1,2,3)
Le fameux mot est disparu de ma mémoire et je n'arrive plus à lui mettre l
amain dessus.
Quelqu'un a-t-il connaissance de ce "truc" ?
Mille mercis et bonne soirée
jacques.

Jacquouille

" Le vin est au repas ce que le parfum est à la femme."

8 réponses

Avatar
MichD
Bonjour,

| si c=1 ou si c = 2 ou si c = 3 ...

Ce n'est pas trop spécifique comme exemple.

Il y a la fonction Choose() ou Choisir() dans la feuille de calcul.

Tu as un Select Case et tous les "cases" que tu peux imaginer...

Tu devrais essayer de donner un exemple plus concret!


MichD
---------------------------------------------------------------
Avatar
Jacquouille
Re
Vu que c'est ancien et que j'ai oublié ... je vais essayer d'être plus
précis
Ton exemple "choisir()" permet à Excel de choisir le xième dans une liste.
C'est pas cela.

Voici ce que je crois avoir retenu:
For each c in range ("a1:a100")
if [c]=1 or [c]=2 or [c] =3 then .....

Cela était remplacé par quelque chose du genre:
"le mot oublié"(1,2,3) then .....

qui était une façon élégante et rapide d'énumérer tous les cas possibles
dans lesquels il fallait exécuter le then ((en l' occurrence, supprimer la
ligne complète où [c] égalait 1 ou 2 ou 3 .
Je ne puis t'en dire plus, si ce n'est que ce "truc-machin" ne semblait pas
connu du grand public, mais apprécié par tes confrères MVP.
Merci pour la peine que tu te donnes pour moi.
Ce n'est pas non plus un Select case.

Jacquouille

" Le vin est au repas ce que le parfum est à la femme."
"MichD" a écrit dans le message de groupe de discussion :
k0bju3$213$

Bonjour,

| si c=1 ou si c = 2 ou si c = 3 ...

Ce n'est pas trop spécifique comme exemple.

Il y a la fonction Choose() ou Choisir() dans la feuille de calcul.

Tu as un Select Case et tous les "cases" que tu peux imaginer...

Tu devrais essayer de donner un exemple plus concret!


MichD
---------------------------------------------------------------
Avatar
isabelle
hello Jacquouille,

peut être..

For Each c In Range("a1:a100")
If Not IsError(Application.Match([c], Array(1, 2, 3), 0)) Then test = 1
Nex

--
isabelle




Le 2012-08-13 15:43, Jacquouille a écrit :
Re
Vu que c'est ancien et que j'ai oublié ... je vais essayer d'être plus précis
Ton exemple "choisir()" permet à Excel de choisir le xième dans une liste. C'est pas cela.

Voici ce que je crois avoir retenu:
For each c in range ("a1:a100")
if [c]=1 or [c]=2 or [c] =3 then .....

Cela était remplacé par quelque chose du genre:
"le mot oublié"(1,2,3) then .....

qui était une façon élégante et rapide d'énumérer tous les cas possibles dans lesquels il fallait exécuter
le then ((en l' occurrence, supprimer la ligne complète où [c] égalait 1 ou 2 ou 3 .
Je ne puis t'en dire plus, si ce n'est que ce "truc-machin" ne semblait pas connu du grand public, mais apprécié par tes confrères MVP.
Merci pour la peine que tu te donnes pour moi.
Ce n'est pas non plus un Select case.

Jacquouille
Avatar
MichD
Je ne sais pas vraiment à quoi tu réfères (l'expression que tu recherches)


MichD
---------------------------------------------------------------
Avatar
Jacquouille
Désolé de ne pouvoir t'aider, Denis. Il se fait que j'ai oublié, c' est
pourquoi je demandais de l'aide.
Mais il y a beaucoup plus grave que cela. Nous dormirons quand même.
merci beaucoup.
Jacques.


Jacquouille

" Le vin est au repas ce que le parfum est à la femme."
"MichD" a écrit dans le message de groupe de discussion :
k0d966$el0$

Je ne sais pas vraiment à quoi tu réfères (l'expression que tu recherches)


MichD
---------------------------------------------------------------
Avatar
Jacquouille
Salut Isa la belle
Cela ressemble assez fort à mon souvenir.
Mais, il est prouvé scientifiquement que ceux-ci s'altèrent au fil des
ans....
Je vais donc prendre pour vrai ce Match suivi de son Array et foutre cela
dans mon agenda.
Je te fais la bise pour te dire merci (Ici, tu as un gros avantage sur
Denis...-))
Bonne semaine

Jacquouille

" Le vin est au repas ce que le parfum est à la femme."
"isabelle" a écrit dans le message de groupe de discussion :
k0c9ra$g9a$

hello Jacquouille,

peut être..

For Each c In Range("a1:a100")
If Not IsError(Application.Match([c], Array(1, 2, 3), 0)) Then test = 1
Nex

--
isabelle




Le 2012-08-13 15:43, Jacquouille a écrit :
Re
Vu que c'est ancien et que j'ai oublié ... je vais essayer d'être plus
précis
Ton exemple "choisir()" permet à Excel de choisir le xième dans une liste.
C'est pas cela.

Voici ce que je crois avoir retenu:
For each c in range ("a1:a100")
if [c]=1 or [c]=2 or [c] =3 then .....

Cela était remplacé par quelque chose du genre:
"le mot oublié"(1,2,3) then .....

qui était une façon élégante et rapide d'énumérer tous les cas possibles
dans lesquels il fallait exécuter
le then ((en l' occurrence, supprimer la ligne complète où [c] égalait 1
ou 2 ou 3 .
Je ne puis t'en dire plus, si ce n'est que ce "truc-machin" ne semblait
pas connu du grand public, mais apprécié par tes confrères MVP.
Merci pour la peine que tu te donnes pour moi.
Ce n'est pas non plus un Select case.

Jacquouille
Avatar
isabelle
bise à toi également Jacquouille, mais tu devras en faire une aussi à Denis

car sa proposition "choose" est de loin plus court ;-)

If Choose([c], 1, 2, 3) Then x = [c]

--
isabelle



Le 2012-08-14 07:28, Jacquouille a écrit :
Salut Isa la belle
Cela ressemble assez fort à mon souvenir.
Mais, il est prouvé scientifiquement que ceux-ci s'altèrent au fil des ans....
Je vais donc prendre pour vrai ce Match suivi de son Array et foutre cela dans mon agenda.
Je te fais la bise pour te dire merci (Ici, tu as un gros avantage sur Denis...-))
Bonne semaine

Jacquouille

" Le vin est au repas ce que le parfum est à la femme."
"isabelle" a écrit dans le message de groupe de discussion : k0c9ra$g9a$

hello Jacquouille,

peut être..

For Each c In Range("a1:a100")
If Not IsError(Application.Match([c], Array(1, 2, 3), 0)) Then test = 1
Nex

Avatar
Jacquouille
Je vais donc faire la bise aux Choose de Denis .....
avec un très grand sourire.... -))

Jacquouille

" Le vin est au repas ce que le parfum est à la femme."
"isabelle" a écrit dans le message de groupe de discussion :
k0delc$ora$

bise à toi également Jacquouille, mais tu devras en faire une aussi à Denis

car sa proposition "choose" est de loin plus court ;-)

If Choose([c], 1, 2, 3) Then x = [c]

--
isabelle



Le 2012-08-14 07:28, Jacquouille a écrit :
Salut Isa la belle
Cela ressemble assez fort à mon souvenir.
Mais, il est prouvé scientifiquement que ceux-ci s'altèrent au fil des
ans....
Je vais donc prendre pour vrai ce Match suivi de son Array et foutre cela
dans mon agenda.
Je te fais la bise pour te dire merci (Ici, tu as un gros avantage sur
Denis...-))
Bonne semaine

Jacquouille

" Le vin est au repas ce que le parfum est à la femme."
"isabelle" a écrit dans le message de groupe de discussion :
k0c9ra$g9a$

hello Jacquouille,

peut être..

For Each c In Range("a1:a100")
If Not IsError(Application.Match([c], Array(1, 2, 3), 0)) Then test = 1
Nex