|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||||
|
Invité de passage
![]() Inscription : janvier 2010 Messages : 9 ![]() |
Bonjour,
Cette année encore, je sollicite vos compétences en SAS macro mais plus particulièrement sur les liaisons DDE entre SAS 9.1.3 et excel 2007. Je vous explique mon cas: Je dois exporter des données SAS dans des tableaux pré-paramétrés dans excel. Pour ce faire, j'utilise habituellement les liaisons dde pour ouvrir mon classeur et transférer les données dans telle ligne, telle colonne. J'utilise aussi des macros, car les opérations à effectuer sont les mêmes avec des variables différentes. Et le plus important, ici dans ce cas, est le fait que je dois réitérer ce programme 40 fois (pour 40 individus) dans 40 onglets différents. Je me demandais donc, s'il n'y avait pas un moyen (un code plus exactement) pour systématiser cette manipulation dans 40 onglets? Voici mon code qui permet de créer un classeur pour un individu: Code :
Code :
ERREUR: Le fichier physique n'existe pas, excel|802 810!L12C4:L12C4. Je pense qu'il faudrait créer une boucle avec %do i=802 %to=893, mais n'étant pas très avertie sur les macros, j'aimerais avoir votre avis sur ce problème. Si je n'ai pas été assez claire, n'hésitez pas à me demander des précisions. Merci de votre aide. |
||||
|
|
00
|
|
|
#2 | |||
|
Expert Confirmé
![]() ![]() Olivier DecourtFormateur en informatique Inscription : avril 2008 Messages : 1 467 ![]() |
Bonjour.
Dans ton code, tu écris Citation:
Par exemple, dans ton code il y aLe . après &nLigne est obligatoire. Si tu écrivais SAS croirait que la 1e macro-variable s'appelle &nLigneC ! Par contre, il s'arrêtera forcément aux & et aux : qui ne peuvent pas faire partie du nom d'une macro-variable. Pour le reste, le problème est effectivement l'absence d'une boucle. Si tous tes identifiants se suivent, tu peux faire mais comme tu parles de seulement 40, il y a trop de valeurs dans la boucle. Si tu as le courage de les énumérer il faudrait plutôt faire une boucle du genre Code :
Bon courage. Olivier |
|||
|
|
00
|
|
|
#3 | ||
|
Membre Expert
![]() ![]() Brice BeareParis Inscription : janvier 2011 Messages : 956 ![]() |
Le problème de ton code est que tu n'arrives pas à scanner chaque élément de ta macro feuille (ce quoi voit dans la log) comme Olivier t'a suggéré, faut faire un scann.
Code :
|
||
|
|
00
|
|
|
#4 |
|
Invité de passage
![]() Inscription : janvier 2010 Messages : 9 ![]() |
Merci. Je suis entrain de tester la boucle, et elle a l'air de fonctionner. J'ai juste quelques modifications à faire dans mon code et je pense qu'il sera au poil!
Et je voulais aussi vous remercier de faire des supports compréhensibles par tous, je pense notamment à la série "expliquée à ma fille", elle a le mérite d'être en français. Car je me suis essayée à la doc de Koen Vyverman sur les DDE, qui est bien faite également, mais là, j'en perds mon latin... |
|
|
00
|
|
|
#5 |
|
Membre Expert
![]() ![]() Brice BeareParis Inscription : janvier 2011 Messages : 956 ![]() |
Heureusement que Olivier a fait une fille
Trop fort Olivier, sincerement !!! |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com