OVH Cloud OVH Cloud

Tris via variable

3 réponses
Avatar
Michel
Bonjour a toute et tous,

Desole, mais j'ai essaye et ca ne marche pas.

Je voudrais trier les choses suivantes :

BIBI = range("A23").value `Valeur = 5
TOTO = range("B23").value `Valeur = 3
DEDE = range("C23").value `Valeur = 11
RORO = range("D23").value `Valeur = 2


J'avais commence par


Dim MyList (1 to 4) as integer

BIBI = range("A23").value `Valeur = 5
TOTO = range("B23").value `Valeur = 3
DEDE = range("C23").value `Valeur = 11
RORO = range("D23").value `Valeur = 2

MyList (1) = BIBI
MyList (2) = TOTO
MyList (3) = DEDE
MyList (4) = RORO

for I = Lbound(MyList) to UBound(MyList)-1
for J = I + 1 to UBound(MyList)
if MyList(I) < MyList(I) then
temp = MyList(J)
MyList(J) = MyList(I)
MyList(I) = temp
end if
next J
next I

un truc dans le genre.... je n'ai rien trouve sur le net, mais certainement
mal cherche....

au final je voudrais faire :

Range("A1").value = "DEDE" ` Car sa valeur = 11
Range("A2").value = "BIBI" ` Car sa valeur = 5
Range("A3").value = "TOTO" ` Car sa valeur = 3
Range("A4").value = "RORO" ` Car sa valeur = 2

Je n'arrive pas non plus a associe dans le tris le nom se rapportant a sa
valeur..

Quelqu'un peut-il m'aider ?

Merci d'avance.

@+

Michel.

3 réponses

Avatar
h2so4
bonsoir,

pour charger Mylist(1..4) avec le contenu des cellules A23:D23

for i=1 to 4
mylist(i)Îlls(23,i)
next i

il y a une erreur dans le tri

if MyList(I) < MyList(I) then

devrait être

if MyList(J) < MyList(I) then

pour remettre le tableau trié dans les cellules A23:D23

for i=1 to 4
cells(23,i)=mylist(i)
next i

"Michel" wrote in message
news:
Bonjour a toute et tous,

Desole, mais j'ai essaye et ca ne marche pas.

Je voudrais trier les choses suivantes :

BIBI = range("A23").value `Valeur = 5
TOTO = range("B23").value `Valeur = 3
DEDE = range("C23").value `Valeur = 11
RORO = range("D23").value `Valeur = 2


J'avais commence par


Dim MyList (1 to 4) as integer

BIBI = range("A23").value `Valeur = 5
TOTO = range("B23").value `Valeur = 3
DEDE = range("C23").value `Valeur = 11
RORO = range("D23").value `Valeur = 2

MyList (1) = BIBI
MyList (2) = TOTO
MyList (3) = DEDE
MyList (4) = RORO

for I = Lbound(MyList) to UBound(MyList)-1
for J = I + 1 to UBound(MyList)
if MyList(I) < MyList(I) then
temp = MyList(J)
MyList(J) = MyList(I)
MyList(I) = temp
end if
next J
next I

un truc dans le genre.... je n'ai rien trouve sur le net, mais
certainement mal cherche....

au final je voudrais faire :

Range("A1").value = "DEDE" ` Car sa valeur = 11
Range("A2").value = "BIBI" ` Car sa valeur = 5
Range("A3").value = "TOTO" ` Car sa valeur = 3
Range("A4").value = "RORO" ` Car sa valeur = 2

Je n'arrive pas non plus a associe dans le tris le nom se rapportant a sa
valeur..

Quelqu'un peut-il m'aider ?

Merci d'avance.

@+

Michel.












Avatar
Michel
Merci, beaucoup, ca marche.

Y'aurait t-il moyen de gerer les nombres qui seraient pareil ?

@+

Michel


"h2so4" a écrit dans le message de news:
sczph.285652$
bonsoir,

pour charger Mylist(1..4) avec le contenu des cellules A23:D23

for i=1 to 4
mylist(i)Îlls(23,i)
next i

il y a une erreur dans le tri

if MyList(I) < MyList(I) then

devrait être

if MyList(J) < MyList(I) then

pour remettre le tableau trié dans les cellules A23:D23

for i=1 to 4
cells(23,i)=mylist(i)
next i

"Michel" wrote in message
news:
Bonjour a toute et tous,

Desole, mais j'ai essaye et ca ne marche pas.

Je voudrais trier les choses suivantes :

BIBI = range("A23").value `Valeur = 5
TOTO = range("B23").value `Valeur = 3
DEDE = range("C23").value `Valeur = 11
RORO = range("D23").value `Valeur = 2


J'avais commence par


Dim MyList (1 to 4) as integer

BIBI = range("A23").value `Valeur = 5
TOTO = range("B23").value `Valeur = 3
DEDE = range("C23").value `Valeur = 11
RORO = range("D23").value `Valeur = 2

MyList (1) = BIBI
MyList (2) = TOTO
MyList (3) = DEDE
MyList (4) = RORO

for I = Lbound(MyList) to UBound(MyList)-1
for J = I + 1 to UBound(MyList)
if MyList(I) < MyList(I) then
temp = MyList(J)
MyList(J) = MyList(I)
MyList(I) = temp
end if
next J
next I

un truc dans le genre.... je n'ai rien trouve sur le net, mais
certainement mal cherche....

au final je voudrais faire :

Range("A1").value = "DEDE" ` Car sa valeur = 11
Range("A2").value = "BIBI" ` Car sa valeur = 5
Range("A3").value = "TOTO" ` Car sa valeur = 3
Range("A4").value = "RORO" ` Car sa valeur = 2

Je n'arrive pas non plus a associe dans le tris le nom se rapportant a sa
valeur..

Quelqu'un peut-il m'aider ?

Merci d'avance.

@+

Michel.
















Avatar
h2so4
Y'aurait t-il moyen de gerer les nombres qui seraient pareil ?


le bout de macro que tu as recopié n'a pas de problème avec des nombres
identiques.