Help using Base SAS procedures

String variables not accessable when read with Proc Import from Excel

Reply
Occasional Contributor
Posts: 10

String variables not accessable when read with Proc Import from Excel

Hi there,

 

I'm having a problem in using PROC IMPORT to import excel files into SAS. I'm using the following code:

 

PROC IMPORT DATAFILE="FILE.xlsx"
	DBMS=xlsx replace
	OUT=FILE;
RUN; 

It appears to be everything ok with the dataset. However, when I try to referece string variables (for instance, "IF VAR='STRINGVALUE') I never get anything as a result. I used trim, strip and compress to check if there was any problem with blanks and it didn't work. I imported the dataset as CSV and it worked right. Proc Contents doesn't show anything unusual with dataset attributes. Does anyone knows what the problem may be?

 

Regards,

David

Super User
Posts: 6,928

Re: String variables not accessable when read with Proc Import from Excel

Could you show as the offending data step code and the output of proc contents for the imported dataset WORK.FILE?

---------------------------------------------------------------------------------------------
Maxims of Maximally Efficient SAS Programmers
Super User
Super User
Posts: 7,392

Re: String variables not accessable when read with Proc Import from Excel

[ Edited ]

The problem could be a number of things.  CAn you extract a bit of the imported dataset, into a datastep and post here:

This post:
https://communities.sas.com/t5/SAS-Communities-Library/How-to-create-a-data-step-version-of-your-dat...

Shows how to do it.

 

And then show us the logic you are trying to apply to it. 

 

Do note that using CSV would always be my preferred solution - fix your datastep import program based on the specifications document agreed with the vendor.  This minimises issues.  Excel is not a good data medium.

Ask a Question
Discussion stats
  • 2 replies
  • 173 views
  • 2 likes
  • 3 in conversation