我有一个宏用于将Windows文件中的Excel文件导入Linux服务器上的SAS(版本9.3)。一般情况下,宏工作正常,但现在我正在尝试导入一个Excel文件,其中包含一个主要包含数字数据的列,其中包含一些字符记录。
变量看起来像这样:
Var2
1111111
2222222
3333333
4444444
Multiple
5555555
H6666-01
变量以数字形式读入,因此我丢失了第五和第七条记录中的数据。我已经尝试了this answer中列出的一些建议,但似乎没有改变变量类型。
以下是我所拥有的宏的一部分:
proc import replace
out=&d_set
dbms=excelcs
file="\\path\to\file\&xlsx_nm";
sheet="&sheet_nm";
server="Server";
port=0000;
serveruser="&sysget_USER";
serverpassword="&pw";
range="&rng";
DBDSOPTS = "DBTYPE=(Var2='CHAR(8)')";
run;
我刚刚根据上面链接的建议添加了语句DBDSOPTS = "DBTYPE=(Var2='CHAR(8)')";
,但日志中的输出没有改变。
我还尝试使用“虚拟”记录(我想避免)填充原始Excel文件,其中包含我遇到问题的列中的字符数据,但这也无效。
我想在导入程序中解决这个问题,但我愿意接受其他建议。