Dates SAS en CHAR

Résolu/Fermé
boti59 Messages postés 21 Date d'inscription mercredi 26 mars 2008 Statut Membre Dernière intervention 30 octobre 2009 - 26 mars 2008 à 10:44
 moun - 23 juin 2010 à 11:51
Bonjour à tous,

Oui je sais vous vous dîtes que vu le titre c'est pas bien compliqué...
Qu'il y a plein de messages sur cette quetion dans Google...

Oui... Mias mon problème est en réalité l'inverse de tout ce qu'on peut trouver.

Je ne veux pas convertir une date sous format caractère en format date, mais l'inverse !

En effet, lorsqu'on exporte les résultats sas dans excel, les dates se transforme en nombre dansle feuille Excel.
Simple encore une fois vous me direz, il suffi de changer le format excel.Oui mais non, ce n'est pas ce que je veux.

Tout étant automatiser, il faudrait que la date arrive dans la feuille excel sous le format caractère (il n'y aura plus de traitement sur cette date par la suite).

Je vous présente donc ce que j'ai déjà essayer et qui n'a pas fonctionné :

--------------------------------------------------------------------------------------------------------
/* Ceci : */

data sats;
set sats;
DateNai=input(DateNai,$10.);
run;

/* ou encore cela: */

data sats;
set sats;
format DateNai $10.;
run;

/* ou pour finir ceci: */

data sats;
set sats;
call symput('daten',DateNai);
DateNai='&daten'; /*ou aussi DateNai=&daten; */
run;

--------------------------------------------------------------------------------------------------------

Aucune de ces méthodes (bien que quelque peu "barbares" pour certaines) ne fonctionnent.

Quelqu'un aurait-il une idée ? Voir la solution, qui peut-être est en réalité très simple ?

Merci par avance à ceux qui s'y essaieront.

Si je trouve la solution je la posterais, cela peut servir à d'autres...

Cordialement.

NB : version de SAS --> V9
A voir également:

3 réponses

boti59 Messages postés 21 Date d'inscription mercredi 26 mars 2008 Statut Membre Dernière intervention 30 octobre 2009 1
26 mars 2008 à 17:23
Suffisait juste de change l'informat ;)

Si le informat de la date est YYMMDD10. , la date s'affichera sous forme de nombre dans la sortie excel. Par contre, si on lui applique l'informat DDMMYY10., elle sortira sous forme de date !

------------------------------------------------------------------------------------------------------

data datessas;
set datessas;
informat DateNai DDMMYY10.;
run;

------------------------------------------------------------------------------------------------------

Merci tout de même !
1
Bonjour
J'ai un prob quand j'importe mes donnees excel vers sas, il n'arrive pas a mettre le nom correcte de certaines apres importation. Et j,essaye de renommer ces variables (par exemple rename Var1='Prenom') et ca ne marche pas.
Ensuite, j'ai une variable qui a trois modalites (OUI, NON, NA) et je veux eliminer le NA et sortir des resultats qu'avec OUI et NON(par exemple, il doit consider le NA comme NMISS)
Merci de votre aide
0
bonjour pour le rename il ne faut pas mettre les cotes
rename Var1=Prenom;
on met les cotes pour les label
label Var1='Prenom';

pour ta variable à 3 modalités :
il suffit de creer une variable numerique :
if mavariable='oui' then var=1;
else if mavariable='NON' then var=0;
else var=9;
/*ou bien tu peut la mettre directement en manquantes
else var=.;
0