Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/71.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何将excel导入getnames=no的sas?_Sas - Fatal编程技术网

如何将excel导入getnames=no的sas?

如何将excel导入getnames=no的sas?,sas,Sas,我想指定新名称,以便使用getnames=no属性: data mylib.test; infile "C:\Users\test.xlsx" ; input var1 $ Opened_Date mmddyy8. salary dollar9.2; DBMS=EXCEL ; range="Sheet5$"; getnames=no; mixed=no; scantext=yes; usedate=yes; scantime=yes

我想指定新名称,以便使用
getnames=no
属性:

data mylib.test; 
   infile  "C:\Users\test.xlsx" ;
   input var1   $ Opened_Date mmddyy8.  salary dollar9.2;
   DBMS=EXCEL ;
   range="Sheet5$";
   getnames=no;
   mixed=no;
   scantext=yes;
   usedate=yes;
   scantime=yes;
   datarow=3;
run;
但这并不意味着什么


PS以下带有
getnames=yes
的代码工作正常。这意味着excel文件没有问题。但是我不想使用
yes
我需要
getnames=no

在这种情况下,数据步骤没有帮助。实际上,你不能用这种方式导入excel文件

在此之后,您可以创建一个数据步骤,并根据PROC IMPORT最初指定的通用名称,以任何方式重命名内容

另一种类似于数据步方法的方法是
libname
access

libname myexcel excel "c:\Usertest.xlsx" getnames=no scantext=yes mixed=no usedate=yes scantime=yes;
然后您可以像这样访问该文件

data test;
set myexcel,'Sheet5$'n;
rename f1=var1 f2=opened_date (...more...);
run;

我倾向于使用PROC IMPORT,因为它更容易为其他人理解,但两者在工作方式上是等效的(PROC IMPORT基本上为您创建了这个libname)。

谢谢。这就是我到目前为止一直在使用的。显然,这是唯一正确的方法。如果您真的想使用数据步骤,有
libname
access方法,但在这个特定的示例中,这并不能真正为您节省任何东西-您仍然需要重命名/等变量。
libname myexcel excel "c:\Usertest.xlsx" getnames=no scantext=yes mixed=no usedate=yes scantime=yes;
data test;
set myexcel,'Sheet5$'n;
rename f1=var1 f2=opened_date (...more...);
run;