DDE et tri dynamique automatique

  • Initiateur de la discussion Initiateur de la discussion dani
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

dani

XLDnaute Nouveau
Bonjour,
Ceci est une application de bourse, nécessitant probablement une formule d’array.
Merci d’avance de me repêcher, car je nage complètement.
Un classeur alimenté par lien DDE comprend trois listes de 50 rangs et de deux colonnes chacune.
La première liste classe des actions en fonction d’un pourcentage de hausse ou de baisse au cours de la session (ordre décroissant).
La deuxième liste classe les mêmes actions en fonction de la hausse ou de la baisse par rapport à l’indice général du marché. (également ordre décroissant).
La troisième liste classe ces actions encore une fois, en fonction de leur rang dans les deux premières listes.
La fonction dans la cellule de la troisième liste devra identifier chaque valeur, puis le rang dans chaque liste, et additionner les rangs pour obtenir un score qui sera trié dans un ordre décroissant.
Une valeur très forte figurera en haut des deux premières listes et vice versa.
Par exemple, si une action figure indifféremment au 2ème rang dans une des listes et au 4ème dans l’autre, le compte dans la troisième liste sera de 6, et ainsi de suite.
Il s’agit d’une part
de coder un macro permettant par bouton de commande de trier automatiquement les 3 listes toutes les 10 secondes,
Et d’autre part
de coder la formule de la troisième liste, permettant d’obtenir le score de chaque valeur.
Salutations
Dani
 
Re : DDE et tri dynamique automatique

Merci, kjin pour ton conseil, et désolé si je n’ai pas respecté tout à fait l’étiquette. Je comprends et respecte la présence de règles dans les forums comme ailleurs. Je vais donc m’efforcer d’être plus clair :

Je travaille sous Windows XP service pack 3 et sur Excel 2007, et Je souhaite analyser une séance de bourse en utilisant un fichier excel alimenté par lien dynamique DDE provenant du logiciel Pro real time.
J’ai présenté l’information sous la forme d’un tableau à deux colonnes, la première colonne contenant les noms des actions, et la deuxième le % de hausse ou de baisse de la valeur au cours de la journée.
Je souhaite trier toutes les 10 secondes ce tableau en fonction du %, par ordre décroissant, par macro, commandé manuellement plutôt qu’à l’ouverture du classeur.
Merci d’avance d’un précieux conseil ou d’une orientation.
Dani
 
Re : DDE et tri dynamique automatique

bonjour dani, kjin

voici une solution :
tu enregistres la macro faisant le tri, puis avec ce code :
Code:
Sub RunEnBoucle()
While 1
    Application.ScreenUpdating = False
    [B][COLOR=Red]Module1.test[/COLOR][/B]
    Application.ScreenUpdating = True
    Application.Wait (Now + TimeValue("00:00:10"))
Wend
End Sub
la macro sera lancée toutes les 10 secondes.
(il faut adapter "Module1.test" en "nomDuModule.MacroDeTri")

par contre, une fois que la macro "RunEnBoucle" est lancée, elle tourne indéfiniment en boucle (il y aura peut-être un problème pour fermer le fichier.

a+
 
Re : DDE et tri dynamique automatique

merci, mromain,
Je vais l'essayer et posterai le résultat.
je suppose que si j'ai deux ou trois listes différentes
à trier dynamiquement dans le même classeur,
je peux dédoubler cette approche.


J'ai une question liée, plus intéressante, je crois.

Il s'agit de visualiser une session de marché grâce à 2 critères
illustrés par deux listes, et de combiner les classements de ces
deux listes dans une troisième.

Dans ces deux listes triées toutes les 10 secondes par ordre décroissant,
je souhaite identifier le rang de chaque valeur (dans chaque liste), les additionner et les faire figurer à coté de la valeur dans une troisième et dernière liste, qui est elle aussi triée toutes les 10 secondes.

Exemple: la valeur danone occupe le 3ème rang dans la première liste,
et le 5ème rang dans la deuxième liste. Elle aura un total de 8 dans la dernière liste qui sera triée comme les autres listes.

Dois je m'orienter vers une formule "array" ou chercher plutôt vers les fonctions type rank, index, lookup etc..

merci encore pour votre temps et cellules grises
Dani
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
4
Affichages
1 K
Retour