|
Publicité ' | ||||||||||||||||||||||||
|
|
#1 | |||
|
Futur Membre du Club
![]() Inscription : juillet 2006 Messages : 90 ![]() |
Bonjour a tous,
voila je pense l'un de mes plus gros problème pour lequel je ne trouve pas de solution a apporter. J'ai réalisé un trie sélectif sur ma feuille source afin dans constituer une autre ne contenant que les éléments que je souhaite. Code :
en dernière colonne la tranche dans laquel je suis, je veu dire par la la plage de 2 minutes d'intervals, créer des feuilles supplémentaires pour réaliser les calculs de chaques plage, pas de prob, je sais faire Bon en colonne 5, le temps qui me sert de référence pour les comparaisons que je doit faire en 1 et 2 le nom de l'avion et son secteur en 3 et 4 tous les noms d'avions suivant l'ensemble des secteurs Citation:
A l'intérieur on prend alors le premier avion AFR1271, et on le compare a tous les avions de la colonne 3, pour déterminer la distance, si distance est de moins de 5 miles, ont met les 2 noms d'avions sur la feuille2 on continu jusqu'a la fin des 8:00:12 pour cette avion, et on passe au suivant dans la liste colonne 1 une fois terminer, on passe a la valeur de temps suivante. Pour les calculs de distance, j'ai déja les équations Un petit peut d'aide me serait d'un grand secour. Merci Ps, pour ceux qui aimerais savoir en quoi consiste se travail, c'est un développement de page d'analyse de donnée de simulation aérienne, pour la NASA. |
|||
|
|
00
|
|
|
#2 |
|
Membre éclairé
![]() Inscription : février 2006 Messages : 932 ![]() |
Hello,
où set ce que tu bloque? Si j'ai bien compris tu veux à un temps t voir quels avions sont proches de moins de 5 miles (et ca tu sais calculer tu as dis), les conditions tu les as, faire un copier coller feuille 2 ca je pense aussi que tu sais faire, non? fait voir ton code et montre où ca coince Ps : la NASA n'a plus de sous pour se payer des programmeurs???
|
|
|
00
|
|
|
#3 | ||
|
Futur Membre du Club
![]() Inscription : juillet 2006 Messages : 90 ![]() |
http://cjoint.com/?hFqaPhzwQ7
trop gros pour le fichier zip, je l'ai simplifier, ne pas chercher à lancer la macro, sa va planter, j'ai retiré la page source Les élément que je ressort de la page source sont sur la feuille2, je recopie en feuille4, et j'applique les tranches. A partir de la, je sais plus faire, quand théorie., sur le pâpier c'est joli, mais en réalité, c'est plus dure. De plus, je ne suis pas programmeur, je suis spécialisé en télécommunication spatiale, y a une grosse marche entre les 2. Bon pour le départ Code :
|
||
|
|
00
|
|
|
#4 | |
|
Membre éclairé
![]() Inscription : février 2006 Messages : 932 ![]() |
Hop,
Citation:
Je vois que tu veux mettre les résultats dans 1 feuille par tranche de 2 min moi j'avais compris que tu mettais tout dans feuille 2 ca me parait ptet beaucoup mais là on a eu qu'un echantillon de tes données donc apres si tu trouves que c'est mieux comme ca.. bref, ok pour ton debut de code mais là je ne vois toujours pas où tu bloques !! tu veux faire pour chaque tranche de 2 minutes (0:00 à 0:02, 0:02 à 0:04 etc...) regarde si il y a des avions dont tu connais la distance qui depassent 5 miles ( >5) tu copies colle le nom (dont tu connais l'emplecement des cellules qui contiennent leur nom). peut etre que tu bloque sur les tranche de 2 minutes? moi c'est le seul truc qui ne me parait pas evident à faire... mais ca me parait pas insurmontable non plus... Dis moi tout |
|
|
|
00
|
|
|
#5 | ||
|
Futur Membre du Club
![]() Inscription : juillet 2006 Messages : 90 ![]() |
Voila se que doit faire la boucle
Code :
|
||
|
|
00
|
|
|
#6 | |
|
Membre éclairé
![]() Inscription : février 2006 Messages : 932 ![]() |
Ok,
Là j'ai juste une petite question encore car tout n'est pas clair. Tu utilise les nom de ta colonne 1 ou ta colonne 3?? là j'avoue je comrpend pas trop... sinon, Citation:
apres pour le nom des avions j'att tes précisions ! voilà par contre là je vais y aller donc on je pense que quelqu'un prendra la releve, sinon à demain |
|
|
|
00
|
|
|
#7 |
|
Futur Membre du Club
![]() Inscription : juillet 2006 Messages : 90 ![]() |
les avions sont les memes, j'ai recopier la colonne des avion et du secteur dans lequel, il se trouve
mais bon je vai repartir du plus simple pour arriver à le solutionner Un avion que l'on compare a une liste avec condition de distance et recopie sur feuille si distance<5miles ET seulement après, boucle sur avion puis boucle sur temps et enfin sur tranche Sa me parrait le plus simple pour avancer Bon a demain, alors, et merci |
|
|
00
|
|
|
#8 |
|
Futur Membre du Club
![]() Inscription : juillet 2006 Messages : 90 ![]() |
Bonjour
Bon j'ai avancer un peu, mais je bloque sur l'écriture de la boucle interne, j'ai écrit mes forumules de calculs, j'ai tout défini, je pense, mais la je bloque sur l'écriture. J'ai mis sur ma feuille1 mes données Je n'arrive pas a faire une boucle autour de Tim, qui réalise la comparaison entre i et toute les valeur de j, tend que Tim à la meme valeur, si Tim change, on change de valeur de i et on met sur feuille2, les noms des avions colonne1 les i, colonnes2 les j si ADist <5 J'arrive meme pas a faire la première boucle Merci |
|
|
00
|
|
|
#9 | |
|
Membre éclairé
![]() Inscription : février 2006 Messages : 932 ![]() |
Citation:
je comprend pas tout, j'ai bien vu feuille 1 tes données et le nom de tes variables en dessous mais apres c'est un peu embrouillé. Par exemple je comprend pas pourquoi t'as AFR1271 en i et en j ! Ensuite j'ai du mal à saisirautre chose. Tu veux voir si les avions sont distants de moins de 5 miles mais juste au meme instant t ou alors sur 2 minutes (exemple : si un avion est à un endroit à 8:00:02 et qu'un autre passe à moins de 5 miles de là à 8:00:45 tu le notes) ?? |
|
|
|
00
|
|
|
#10 | ||
|
Futur Membre du Club
![]() Inscription : juillet 2006 Messages : 90 ![]() |
C'est normal, d'avoir le meme nom d'avion, de tout façon, sa fera 0 au résultat, donc pas de prob car ADist doit etre compris entre ]0:5]
Sinon, la comparaison doit se faire sur meme temps et sur interval Code :
Donc on compare suivant temps, et on note les avion en feuille2 jusqu'au dernier temps de l'interval et ensuite on copie les autres élément à la suite sur cette meme page Je devaris ensuite faire un tri suivant interval, et compter le nombre d'avion différents, sa je sais faire Mais pas la boucle qui me permet de tout comparer |
||
|
|
00
|
|
|
#11 | ||
|
Membre éclairé
![]() Inscription : février 2006 Messages : 932 ![]() |
Hop,
alors je reprend ton code (j'ai juste modifié des declarations..) Code :
ton "i" il prend un nom d'avion toutes les autant de lignes c'est bien ca? ici par exemple il a la meme valeur pour 8 lignes? Ps : "Arcos" il aime pas.... il me dit sub ou fonction indéfinie |
||
|
|
00
|
|
|
#12 |
|
Futur Membre du Club
![]() Inscription : juillet 2006 Messages : 90 ![]() |
Arcos, je connait pas bien les fonction donc si c'est cos-1, c'est cos-1
Pour simplifier encore, les choses, je pense et moins se compliquer la tete J'ai fait une découpe par tranche, 1-2-3-.... pour chaque tranche, on réalise une feuille de résultat, les simulations e fesant sur max 1h30, sa va encore, mais fodra voir pour les effacer après, mais la c'est a voir Sinon, par tranche, j'ai différente valeur de temps, on est d'accord la pour cahque valeur, on créer une feuille, sur laquelle, on copie, les lignes correspondante, on détermine alors les avions et on les copie sur la feuille de résultats correspondante, puis on efface la feuille Il faut donc réaliser un compteur , qui va déterminer le nombre de feuille a créer. Sa parrait un plus fessable la |
|
|
00
|
|
|
#13 |
|
Membre éclairé
![]() Inscription : février 2006 Messages : 932 ![]() |
Hm,
je pense qu'il faudrait se fixer sur 1 methode ! là à force de changer tout le temps on avancera jamais. Moi celle d'avant me paraissait pas mal. Pour le arcos j'en sais rien c'etait une question... ca te donne quoi? par exemple qd tu met cos c'est pour cosinus.... quand tu mets arcos c'est pour.. ? le code chez toi en mettant arcos fonctionne? |
|
|
00
|
|
|
#14 |
|
Futur Membre du Club
![]() Inscription : juillet 2006 Messages : 90 ![]() |
Non fonctionne pas non plus
ArCos ne fonctionne pas. Si la méthode te parrait bien , on continu dessus j'ai pensé, pour les boucles d'analyse faire For i to j i première valeur ou j'ai unj avion et j les autres, mais je panse que sa va poser problème après lors du passage sur une autre valeur, en plus je suis vraiment nul en VBA |
|
|
00
|
|
|
#15 | ||
|
Membre éclairé
![]() Inscription : février 2006 Messages : 932 ![]() |
Bon alors,
le For i to j n'espere pas de trop !! il faut faire plutot comme ca je pense: tu initialise i à LIGNE1 qui vaut 1. tu met dans une variable temporaire la valeur LIGNE2 qui est la valeur de la ligne suivante où i n'est pas vide (j'espere etre clair... je veux dire le prochain avion des i, dans ton fichier exemple ca sera surement ligne 9) ensuite, tu as donc ton i=1 tu fait ta compraison avec cette boucle : While Code :
tu recalcule la ligne de i qui est non vide mais en commencant ta recherche à partir de LIGNE9+1 (ta ligne 10...) il te trouve la prochaine ligne de i non vide et tu Loop voilà, j'ai essayé de faire clair Ps : pour arcos... ok ca ne vas pas mais dis moi juste le nom de la fonction, son vrai nom ! que je trouve l'equivalent vba... cos=cosinus arcos=... ? |
||
|
|
00
|
|
|
#16 |
|
Futur Membre du Club
![]() Inscription : juillet 2006 Messages : 90 ![]() |
arcos, c'est le petit cos-1 de la calculette
Pour tous le reste, je suis dans le flou totale moi, ji comprend déja plus rien avec tes lignes si j'ai 2 ou 3 avion a analyser , je fait comment? arcosinus Code :
Arccosinus Arccos(X) = Atn(-X / Sqr(-X * X + 1)) + 2 * Atn(1) |
|
|
00
|
|
|
#17 | |||
|
Membre éclairé
![]() Inscription : février 2006 Messages : 932 ![]() |
ah oui arccosinus ok...
bref.. j'ai trouvé en vba cest ACOS par contre il me dit toujours "Sub non définie" et là je comprend pas Citation:
![]() Code :
|
|||
|
|
00
|
|
|
#18 | ||
|
Futur Membre du Club
![]() Inscription : juillet 2006 Messages : 90 ![]() |
Code :
mais moi c'est Sqrt qui me dit non def, et quand je retire le "t", c'est bon, mais c'est autre chose qui merde Code :
lati = DegToRad * Cells(i, 2).Value / 10000 Tu as regardé ma page complete? |
||
|
|
00
|
|
|
#19 | |||
|
Membre éclairé
![]() Inscription : février 2006 Messages : 932 ![]() |
Hop,
oui j'ai regardé ta page j'ai vu que les données etaiant irregulierement espacées Code :
pour la racine carrée c'est bien SQR. Citation:
|
|||
|
|
00
|
|
|
#20 |
|
Futur Membre du Club
![]() Inscription : juillet 2006 Messages : 90 ![]() |
je ne l'ai pas défini, car c'est une donnée que je reprend, mais j'ai remarqué se que je pense etre le problème
peut pas calcul, je cherche pour le remettre en valeur utilisable tout comme longitude mais sinon, je pense que se sont des variant il faudarit passe les valeur en décimal j'ai trouiver un site, plus qu'a trouver le code http://www.lexilogos.com/calcul_distances.htm degree minute seconde |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com