I would suggest that you do something in Excel to store character strings for your column headers instead of formatted numbers. As an example I made a small sheet with 4 columns 'ID', 'Jan-15', 'Feb-15' and 2015-03-15 formatted to display as Mar-15. Here is the result from PROC IMPORT. 269 proc import datafile='c:\downloads\date_example.xlsx' 270 dbms=xlsx 271 out=example 272 replace 273 ; 274 run; NOTE: Variable Name Change. Jan-15 -> Jan_15 NOTE: Variable Name Change. Feb-15 -> Feb_15 NOTE: Variable Name Change. 42078 -> _42078 NOTE: The import data set has 1 observations and 4 variables. NOTE: WORK.EXAMPLE data set was successfully created. NOTE: PROCEDURE IMPORT used (Total process time): real time 0.06 seconds cpu time 0.03 seconds If you cannot fix then read the column headers from the metadata (or PROC CONTENTS output) and convert to what ever format you want and generate a RENAME statement to change the variable names. proc sql noprint ; select catx('=',name,substr(put(input(substr(name,2),8.)+'01JAN1900'd-2,date9.),3)) into :rename from contents where name like '^_%' escape '^' ; quit;
... View more