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

plus grand nombre en VBA

3 réponses
Avatar
bernard
Bonjour =E0 tous,
j'avais pos=E9 une question sur la recherche du plus grand=20
nombre d'un plage de cellule et j'ai eu tr=E8s rapidement=20
plusieurs r=E9ponses qui m'ont satisfait et j'en remercie=20
encore les contributeurs.
ma question: Philippe R m'a propos=E9 une solution que=20
j'aimerai comprendre .
sub reperemoilemax()
'Philippe R MPFE 06/09/2003
dim i as integer
i=3D Application.WorksheetFunction.index(Range
("A1:E1"),Application.WorksheetFunction.Match
(Application.WorksheetFunction.Max(Range("A1:E1")),Range
("A1:F1),o).column
cells(2,i).value =3D1
end sub
que veut dire Match, pourquoi column etc....
Merci =E0 Philippe ou d'autre s'il pouvait me donner des=20
pr=E9cisions sur la valeur de i
Bernard

3 réponses

Avatar
Philippe.R
Bonjour Bernard,
Pour mémoire, l'énoncé de la question était celui ci :

J'ai une liste de nombres entiers en A1, B1, C1, D1, E1
Trouver le nombre le plus grand est facile avec Max(A1:E1).
Comment en VBA faire ajouter 1 sous le plus grand nombre.

Par exemple A1 = 5, B1=2, C1=8, D1, E1= 0
le nombre le plus grand est 15 et je voudrai afficher 1
dans la colonne D (en D2 par exemple).

Dans la réponse, qui utilise les fonctions de feuille de calcul INDEX() qui se traduit en VBA par index
et EQUIV() qui est traduite en VBA par Match,
on affecte à la variable i la valeur du numéro de la colonne, (renvoyé par .column) correspondant à la
position du maximum dans la plage considérée (a1:e1)
En fait i est le résultat de la formule de feuille :
=COLONNE(INDEX(A1:E1;EQUIV(MAX(A1:E1);A1:F1;0)))
traduite en VBA
à partir de là, cells(2,i) pointe la cellule de la ligne 2 située dans la même colonne.
--
Amicales Salutations

Retirer A_S_ pour répondre.
XL97 / XL2002

"bernard" a écrit dans le message de
news:0a1c01c37b9e$0c601ae0$
Bonjour à tous,
j'avais posé une question sur la recherche du plus grand
nombre d'un plage de cellule et j'ai eu très rapidement
plusieurs réponses qui m'ont satisfait et j'en remercie
encore les contributeurs.
ma question: Philippe R m'a proposé une solution que
j'aimerai comprendre .
sub reperemoilemax()
'Philippe R MPFE 06/09/2003
dim i as integer
i= Application.WorksheetFunction.index(Range
("A1:E1"),Application.WorksheetFunction.Match
(Application.WorksheetFunction.Max(Range("A1:E1")),Range
("A1:F1),o).column
cells(2,i).value =1
end sub
que veut dire Match, pourquoi column etc....
Merci à Philippe ou d'autre s'il pouvait me donner des
précisions sur la valeur de i
Bernard
Avatar
sabatier
rien d'étonnant, en fait...
jps (terré dans sa tranchée mais avec une provision de bouteilles)

"Philippe.R" wrote:

Re,
Ayant retrouvé le fil d'origine, je précise que Michel Gaboly avait proposé une solution beaucoup plus
élégante et concise que mon "machin". :o))
--
Amicales Salutations

Retirer A_S_ pour répondre.
XL97 / XL2002
Pour suivre le forum :
news://msnews.microsoft.com/microsoft.public.fr.excel
(Voulez-vous vous abonner ? -> Oui)

"bernard" a écrit dans le message de
news:0a1c01c37b9e$0c601ae0$
Bonjour à tous,
j'avais posé une question sur la recherche du plus grand
nombre d'un plage de cellule et j'ai eu très rapidement
plusieurs réponses qui m'ont satisfait et j'en remercie
encore les contributeurs.
ma question: Philippe R m'a proposé une solution que
j'aimerai comprendre .
sub reperemoilemax()
'Philippe R MPFE 06/09/2003
dim i as integer
i= Application.WorksheetFunction.index(Range
("A1:E1"),Application.WorksheetFunction.Match
(Application.WorksheetFunction.Max(Range("A1:E1")),Range
("A1:F1),o).column
cells(2,i).value =1
end sub
que veut dire Match, pourquoi column etc....
Merci à Philippe ou d'autre s'il pouvait me donner des
précisions sur la valeur de i
Bernard


Avatar
Philippe.R
Bonsoir Jean Paul,
rien d'étonnant, en fait...
que je le précise ?

Bien sur, vu mon immense modestie, qui bien que très en dessous de celle de GeeDee, commence à être
reconnue.
;o))))
--
Amicales Salutations

Retirer A_S_ pour répondre.
XL97 / XL2002
Pour suivre le forum :
news://msnews.microsoft.com/microsoft.public.fr.excel
(Voulez-vous vous abonner ? -> Oui)

"sabatier" a écrit dans le message de news:
rien d'étonnant, en fait...
jps (terré dans sa tranchée mais avec une provision de bouteilles)

"Philippe.R" wrote:

Re,
Ayant retrouvé le fil d'origine, je précise que Michel Gaboly avait proposé une solution beaucoup
plus


élégante et concise que mon "machin". :o))
--
Amicales Salutations

Retirer A_S_ pour répondre.
XL97 / XL2002
Pour suivre le forum :
news://msnews.microsoft.com/microsoft.public.fr.excel
(Voulez-vous vous abonner ? -> Oui)

"bernard" a écrit dans le message de
news:0a1c01c37b9e$0c601ae0$
Bonjour à tous,
j'avais posé une question sur la recherche du plus grand
nombre d'un plage de cellule et j'ai eu très rapidement
plusieurs réponses qui m'ont satisfait et j'en remercie
encore les contributeurs.
ma question: Philippe R m'a proposé une solution que
j'aimerai comprendre .
sub reperemoilemax()
'Philippe R MPFE 06/09/2003
dim i as integer
i= Application.WorksheetFunction.index(Range
("A1:E1"),Application.WorksheetFunction.Match
(Application.WorksheetFunction.Max(Range("A1:E1")),Range
("A1:F1),o).column
cells(2,i).value =1
end sub
que veut dire Match, pourquoi column etc....
Merci à Philippe ou d'autre s'il pouvait me donner des
précisions sur la valeur de i
Bernard