Bonjour,
Je souhaiterai stocker dans des macro-variables les données d'une table lue ligne par ligne.
Les macro-variables créés seront utilisés dans la même macro.
Je ne connais pas le nombre de lignes ni le nombre de colonnes de la table.
Par exemple :
Avec contenu de la table :
A B C D E
1 1 8 7 4
2 9 1 4 2
Afficher
variable A a pour valeur 1 en ligne 1
variable B a pour valeur 1 en ligne 1
variable C a pour valeur 8 en ligne 1
variable D a pour valeur 7 en ligne 1
variable E a pour valeur 4 en ligne 1
variable A a pour valeur 2 en ligne 2
variable B a pour valeur 9 en ligne 2
variable C a pour valeur 1 en ligne 2
variable D a pour valeur 4 en ligne 2
variable E a pour valeur 8 en ligne 2
Mon code n'est pas correct mais illustre l'idée :
Merci pour l'aide
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 %Macro read (table=) ; %DO i = 1 %TO nombredelignedelatable ; %let nomcolonnes = récupérer les colonnes pour la ligne 1; PROC SQL; SELECT &nomcolonnes. FROM &table. WHERE ligne a lire = &i.; QUIT; %END; %let var1= call symputx((put(i,3.), colonne_table(1)) ; %let var2= call symputx((put(i,3.), colonne_table(2)) ; %put variable &nomcolonne(1) a pour valeur &var. en ligne &i.; %END %Mend ; %read (table=ods.table);
Partager