Have: a xlsb file.
Want: import part of the data to SAS EG.
Code used:
%macro Import;
proc import datafile = "&_folderpath&_filepath&_filename" /* pre-defined, no error here */
out = work.test
replace
dbms= xlsb; /* changes were made here*/
range='Sheet1$A3:Z900000'n;
getnames=yes;
run;
%mend Import;
%Import;
run;
One error reported:
ERROR: DBMS type XLSB not valid for import.
Tried to change the code to
dbms= ExcelCS;
One error reported:
ERROR: Statement or Option "GETNAMES" not valid for EXCELCS IMPORT.
The column names come from A3:Z3. Definitely need it.
How to fix the codes?
What about DBMS = EXCEL or XLS? If you have the bitness problem then you can download the 64-bit ACE engine software from Microsoft as an alternative to using the SAS PC File Server.
Have you tried with dbms=excelcs? Getnames unfortunately isn't supported with that dbms from what I can see.
You could specify the range to ensure you have the right variable columns with range='a5:e21'n for example. Alternatively if you can have the range named it works even better.
What about DBMS = EXCEL or XLS? If you have the bitness problem then you can download the 64-bit ACE engine software from Microsoft as an alternative to using the SAS PC File Server.
Join us for SAS Innovate 2025, our biggest and most exciting global event of the year, in Orlando, FL, from May 6-9. Sign up by March 14 for just $795.
What’s the difference between SAS Enterprise Guide and SAS Studio? How are they similar? Just ask SAS’ Danny Modlin.
Find more tutorials on the SAS Users YouTube channel.
Ready to level-up your skills? Choose your own adventure.