IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

ODS et reporting Discussion :

PROC TABULATE : Mettre en couleur toutes les valeurs d'une ligne total


Sujet :

ODS et reporting

  1. #1
    Nouveau Candidat au Club
    Femme Profil pro
    Responsable des études
    Inscrit en
    Octobre 2011
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Haut Rhin (Alsace)

    Informations professionnelles :
    Activité : Responsable des études
    Secteur : Santé

    Informations forums :
    Inscription : Octobre 2011
    Messages : 1
    Points : 1
    Points
    1
    Par défaut PROC TABULATE : Mettre en couleur toutes les valeurs d'une ligne total
    Bonjour,

    j'ai une proc tabulate dans laquelle je souhaite mettre toutes les valeurs de la ligne total (ALL) en couleur.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    ODS PDF UNIFORM File="&FicOUT_PDF" STARTPAGE=NO                                                                                                                                                                                                     
            Style=styles.NormalPrinter;                                                                                                                                                                                                                             
     
    proc tabulate data=RES_ME_FAD missing ;
          class LIBTYPUM LIBUM RES_MODENT / style={textalign=c font_size=8pt font_face=arial font_style=roman font_weight=bold};
          table  LIBTYPUM=' ' * (LIBUM=' ' ALL='Total'*f=10.*{s={textalign=c background=white foreground=red font_size=8pt height=0.5cm font_face=arial font_style=roman}}) ALL='Total'*f=10.*{s={textalign=c foreground=red font_size=8pt height=0.5cm font_face=arial font_style=roman}} ,
                 RES_MODENT="Modes d'entrée" * N="Nb RUM"*f=10.*{s={cellwidth=2.5cm textalign=r font_size=8pt height=0.5cm font_face=arial font_style=italic}}
    	                  / rts=80 box={label=" " style={just=left font_face=arial font_size=2 font_style=roman}} misstext=" ";                                                                                                                           
         classlev LIBUM / style={textalign=l font_size=8pt font_face=arial font_style=italic font_style=roman font_weight=light};
         classlev LIBTYPUM / style={textalign=l font_size=8pt font_face=arial font_style=italic font_style=roman font_weight=light};
         keyword ALL / style={background=white textalign=l font_size=8pt height=0.5cm font_face=arial font_style=italic font_weight=bold}; 
         keyword N / style={textalign=c font_size=8pt height=0.5cm font_face=arial font_style=italic font_weight=bold};   
    run; 
    ODS PDF CLOSE;
    J'ai beau mettre au niveau des 2 instructions ALL : foreground=red mais à l'édition les valeurs des mes lignes 'total (ALL)' restent en couleur "noire".
    Par avance je remercie la personne qui pourra m'aider à résoudre ce problème .
    Cordialement.

  2. #2
    Expert confirmé
    Avatar de olivier.decourt
    Homme Profil pro
    Formateur R/SAS/statistiques
    Inscrit en
    Avril 2008
    Messages
    2 064
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France

    Informations professionnelles :
    Activité : Formateur R/SAS/statistiques
    Secteur : Conseil

    Informations forums :
    Inscription : Avril 2008
    Messages : 2 064
    Points : 4 478
    Points
    4 478
    Par défaut
    Bonjour Martine.
    Je ne sais pas si j'y vois clair dans la forêt d'indications de style et de formats (certaines en double pour les formats, d'ailleurs), mais une piste serait la suivante : quand une cellule du tableau reçoit plusieurs indications de style de sources différentes (par la ligne à laquelle elle appartient et par sa colonne), SAS ne les combine pas, mais fait de l'annule et remplace.
    Donc la couleur rouge sur la ligne de total se trouve annulée par l'indication de style au niveau des colonnes.
    Une solution est l'option STYLE_PRECEDENCE=ROW, qui rend les styles mentionnés en ligne prioritaires sur ceux des colonnes. On change juste l'ordre de l'annule et remplace, on n'obtient pas vraiment de combinaison, mais c'est déjà ça.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    ODS PDF FILE="c:\temp\martine.pdf" ;
    PROC TABULATE DATA=sashelp.class ;
      CLASS age sex ;
      TABLE age ALL*{S={FOREGROUND=RED FONT_WEIGHT=BOLD}},
            sex * N*{S={FONT_SIZE=10PT}} ;
    RUN ;
    PROC TABULATE DATA=sashelp.class ;
      CLASS age sex ;
      TABLE age ALL*{S={FOREGROUND=RED FONT_WEIGHT=BOLD}},
            sex * N*{S={FONT_SIZE=10PT}} 
    	/ STYLE_PRECEDENCE=ROW ;
    RUN ;
    ODS PDF CLOSE ;
    Bon courage.
    Olivier

Discussions similaires

  1. [AC-2003] mettre a jour toutes les valeurs d'un colonne dans une zone de liste
    Par yieiyiei dans le forum VBA Access
    Réponses: 1
    Dernier message: 29/04/2015, 22h41
  2. [XL-2010] Mettre en colonne toutes les valeurs d'un tableau
    Par garulf0 dans le forum Excel
    Réponses: 7
    Dernier message: 21/07/2014, 17h40
  3. Réponses: 3
    Dernier message: 16/08/2006, 16h11
  4. Toutes les valeurs d'une colonne - Tableau à 2D
    Par Bridou dans le forum Langage
    Réponses: 3
    Dernier message: 30/06/2006, 17h05
  5. Lire toutes les valeurs d'une clé
    Par winow dans le forum C++Builder
    Réponses: 3
    Dernier message: 03/02/2006, 19h51

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo