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

Équivalent de Grande.Valeur dans VBA

6 réponses
Avatar
Eplep
Bonjour,

J'ai un tableau de 4 colonnes (A:D) et 100 lignes. Je dois trouver les 3
plus grandes valeurs de la colonne A et en afficher les données qui figurent
sur ces lignes, puis recommencer en me basant sur les valeurs de la colonne
B.

Exemple :
3 H1T Montréal Québec
2 J7G Sherbrooke Québec
8 G1V Beauport Québec
5 K1X Ottawa Ontario

donnerait tout d'abord, pour la colonne A
Beauport Québec
Ottawa Ontario
Montréal Québec

puis, pour la colonne B
Ottawa Ontario
Sherbrooke Québec
Montréal Québec

Existe-t-il une formule VBA pour extraire ce type de données?
Quelque chose qui ressemblerait à la fonction Excel Grande.Valeur?
Autre chose?

Merci pour votre aide!

Eplep

6 réponses

Avatar
Francois L
Eplep a écrit :

Bonjour, (ou bonsoir)

Application.WorksheetFunction.Large(Maplage, i)

ou i est le rang recherché (1,2,3, etc.)

En revanche, je ne vois pas comment tu vas utiliser la fonction sur ta
colonne B qui semble être du texte.

--
François L



Bonjour,

J'ai un tableau de 4 colonnes (A:D) et 100 lignes. Je dois trouver les 3
plus grandes valeurs de la colonne A et en afficher les données qui figurent
sur ces lignes, puis recommencer en me basant sur les valeurs de la colonne
B.

Exemple :
3 H1T Montréal Québec
2 J7G Sherbrooke Québec
8 G1V Beauport Québec
5 K1X Ottawa Ontario

donnerait tout d'abord, pour la colonne A
Beauport Québec
Ottawa Ontario
Montréal Québec

puis, pour la colonne B
Ottawa Ontario
Sherbrooke Québec
Montréal Québec

Existe-t-il une formule VBA pour extraire ce type de données?
Quelque chose qui ressemblerait à la fonction Excel Grande.Valeur?
Autre chose?

Merci pour votre aide!

Eplep




Avatar
Philippe.R
Bonjour,
Pour le classement sur la colonne B, il semble qu'une conversion numérique
du type ci dessous convienne :

=COLONNE(INDIRECT(DROITE(B1;1)&"1"))+9+(10*CNUM(STXT(B1;2;1)))+100*(COLONNE(INDIRECT(GAUCHE(B1;1)&"1"))+9)
--
Avec plaisir
http://dj.joss.free.fr/trombine.htm
http://jacxl.free.fr/mpfe/trombino.html
Philippe.R
Pour se connecter au forum :
http://www.excelabo.net/mpfe/connexion.php
News://news.microsoft.com/microsoft.public.fr.excel
"Francois L" a écrit dans le message
de news:e%
Eplep a écrit :

Bonjour, (ou bonsoir)

Application.WorksheetFunction.Large(Maplage, i)

ou i est le rang recherché (1,2,3, etc.)

En revanche, je ne vois pas comment tu vas utiliser la fonction sur ta
colonne B qui semble être du texte.

--
François L



Bonjour,

J'ai un tableau de 4 colonnes (A:D) et 100 lignes. Je dois trouver les 3
plus grandes valeurs de la colonne A et en afficher les données qui
figurent sur ces lignes, puis recommencer en me basant sur les valeurs de
la colonne B.

Exemple :
3 H1T Montréal Québec
2 J7G Sherbrooke Québec
8 G1V Beauport Québec
5 K1X Ottawa Ontario

donnerait tout d'abord, pour la colonne A
Beauport Québec
Ottawa Ontario
Montréal Québec

puis, pour la colonne B
Ottawa Ontario
Sherbrooke Québec
Montréal Québec

Existe-t-il une formule VBA pour extraire ce type de données?
Quelque chose qui ressemblerait à la fonction Excel Grande.Valeur?
Autre chose?

Merci pour votre aide!

Eplep




Avatar
Francois L
Philippe.R a écrit :

Bonjour Philippe,

Oui, il semble bien... :o)

--
François L

Bonjour,
Pour le classement sur la colonne B, il semble qu'une conversion
numérique du type ci dessous convienne :

=COLONNE(INDIRECT(DROITE(B1;1)&"1"))+9+(10*CNUM(STXT(B1;2;1)))+100*(COLONNE(INDIRECT(GAUCHE(B1;1)&"1"))+9)



Avatar
Francois L
Philippe.R a écrit :

Re,

Peut-être aussi
=CNUM(CODE(B1)&CNUM(STXT(B1;2;1)&CODE(STXT(B1;3;1))))

--
François L

Bonjour,
Pour le classement sur la colonne B, il semble qu'une conversion
numérique du type ci dessous convienne :

=COLONNE(INDIRECT(DROITE(B1;1)&"1"))+9+(10*CNUM(STXT(B1;2;1)))+100*(COLONNE(INDIRECT(GAUCHE(B1;1)&"1"))+9)



Avatar
Philippe.R
Re,
Oui, aussi ;o))
J'observe à cette occasion qu'Excel accepte =CODE(B1) pour
=CODE(GAUCHE(B1;1)) sans broncher
Ca peut faire la différence dans la course à la plus courte...
--
Avec plaisir
http://dj.joss.free.fr/trombine.htm
http://jacxl.free.fr/mpfe/trombino.html
Philippe.R
Pour se connecter au forum :
http://www.excelabo.net/mpfe/connexion.php
News://news.microsoft.com/microsoft.public.fr.excel
"Francois L" a écrit dans le message
de news:
Philippe.R a écrit :

Re,

Peut-être aussi
=CNUM(CODE(B1)&CNUM(STXT(B1;2;1)&CODE(STXT(B1;3;1))))

--
François L

Bonjour,
Pour le classement sur la colonne B, il semble qu'une conversion
numérique du type ci dessous convienne :

=COLONNE(INDIRECT(DROITE(B1;1)&"1"))+9+(10*CNUM(STXT(B1;2;1)))+100*(COLONNE(INDIRECT(GAUCHE(B1;1)&"1"))+9)




Avatar
Eplep
Bonjour François L et Philippe.R,

Vous venez de mettre un terme à des heures de recherche...!

Merci beaucoup pour votre aide!

Eplep