logo

Exportation : centrer les données d’un tableau Excel en SAS

Bonjour, j’ai réussi à générer un fichier Excel en SAS mais je n’arrive pas à le mettre en forme grâce à des feuilles de style. En effet je souhaiterai que les données de mon tableau Excel apparaissent centrées et non alignées à gauche comme le fait Excel par défaut. Si on génére un fichier HTML, les données arrivent parfaitement à être centrées. Or, sur Excel cela ne marche pas !!! Voici mon code :

<strong>proc template; </strong>
<strong>   define style styles.noborder; </strong>
<strong>     parent=styles.minimal; </strong>
<strong>       style Pays / </strong>
<strong>       just = center; </strong>
<strong>   end;</strong>
<strong> run; </strong>
 
<strong> ODS HTML FILE='Edition.xls' STYLE=styles.noborder; </strong>
<strong> title;</strong>
<strong> Proc print data=final noobs;</strong>
<strong> Run;</strong>
<strong> ods HTML close ;</strong>

Merci d’avance.

Je vous conseillerais d’aller agir directement dans la procédure Print, qui le permet, plutôt que dans la procédure Template, qui accepte mal les cas particuliers de mise en forme par colonne.

ODS HTML FILE='Edition.xls' STYLE=minimal ; 
 TITLE ;
 PROC PRINT DATA=final NOOBS ;
   VAR entite ;
   VAR pays / STYLE = [JUST=CENTER] ;
   VAR ;
 RUN ;
ODS HTML CLOSE ;

Attention cependant, selon les versions, Excel n’applique pas toujours les consignes de centrage. Si vous possédez SAS 9 et Excel 2003, je vous conseille plutôt de passer par la destination ODS TAGSETS.EXCELXP que par ODS HTML.

ODS ODS TAGSETS.EXCELXP FILE='Edition.xls' STYLE=minimal ; 
 title; 
 Proc print data=final noobs;
   VAR entite ;
   VAR pays / STYLE = [JUST=CENTER] ;
   VAR ;
 Run;
 ods ODS TAGSETS.EXCELXP close ;