Vba-echantillon

Aidez-moi svp -  
 amsoartsa -
Bonjour,

J'ai un probleme pour programmer avec VBA. J'ai un ensemble de données que je dois repartir alétoirement en en sous ensembles de meme taille et rangés par ordre croissante. Pour les n ensembles tirés et rangés, je dois extraire pour le premier le plus grand nombre, pour le deuxieme ensemble le deuxieme plus grand nombre ...ainsi de suite jusqu'au m ieme ensemble que je dois extraire le m ieme plus grand nombre.
La premiere partie est faite, mais c'est la deuxieme partie qui me pose probleme c'est à dire l'extraction des données dans les ensembles.

Merci de m'aider

6 réponses

amsoartsa Messages postés 1 Date d'inscription   Statut Membre Dernière intervention  
 
Est ce que quelqu'un a une idée sur ce sujet
0
bouket Messages postés 143 Date d'inscription   Statut Membre Dernière intervention   22
 
Bonjour,

Ne peux-tu pas simplement parcourir l'ensemble, en mettant de côté la première valeur puis en la comparant à la deuxieme... et en la remplacant si elle est plus grande et parcourir jusqu'à la fin de ton ensemble et ainsi, tu as dans ta variable la plus grande valeur de l'ensemble ?

Peut-être n'ai je pas bien compris la question ^^ !

Edit : AH ! le deuxième plus grand nombre ok !
et bien, essai de les classer dans une table ... tu fais une copie de ton ensemble ... et tu regarde lequel est le plus grand, tu le supprimes après l'avoir sauvegarder dans la première case mémoire de ta table, puis tu fais pareil avec le deuxieme ... ect !

Tu produis comme ca pour chaque ensemble et tu les auras donc classé...

Après il suffit de prendre la bonne ligne !


à ++
0
amsoartsa
 
Merci de votre reponse mais j'ai pas trop compris l'explication, pouvez-vous me donner un exemple?

Merci!!
0
starghof Messages postés 177 Date d'inscription   Statut Membre Dernière intervention   4
 
c'est un traitement recursive !! non?
0
amsoartsa
 
Merci de me donner un exemple.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Polux31 Messages postés 6917 Date d'inscription   Statut Membre Dernière intervention   1 204
 
On gagne quoi si on fait ton exercice ?
0
bouket Messages postés 143 Date d'inscription   Statut Membre Dernière intervention   22
 
Tes ensembles étant classés par ordre croissant, cela simplifie les choses

Option Base 1 'Il commence la table à 1

Sub Macro1

Dim nombre_element As integer
nombre_element = ?? 'le nombre d'élément de chaque ensemble (valeur constante !)
Dim table_données(n) As Variant 'Il crée une table de n valeurs...

For j= 1 To n 'il parcourt les ensembles

table_données(j) = Cells(nombre_element - j +1, numéro de la colonne).Value 'il attribue à la case mémoire j de la table la valeur de la cellule correspondant au j ème plus grand nombre... (il va cherche en commencant par le bas!)

Next j 'il passe à l'ensemble suivant

End Sub



Cela te parles ??
0
amsoartsa
 
Merci beaucoup!!!
0