从Excel导入长文本字符串

从Excel导入长文本字符串,excel,sas,Excel,Sas,我正在尝试导入一些包含很长文本字符串的Excel文件。字符串被截断为1024个字符。我尝试过使用dbastype=(PVS_text=“CHAR(2000)”),TEXTSIZE=32767并将Excel单元格格式化为文本,但都没有用。你能告诉我如何读入整个文本字符串吗 %macro fileinput; %local i; %do i= 1 %to &nfile; /* Store import path and output filename into macro va

我正在尝试导入一些包含很长文本字符串的Excel文件。字符串被截断为1024个字符。我尝试过使用
dbastype=(PVS_text=“CHAR(2000)”)
TEXTSIZE=32767
并将Excel单元格格式化为文本,但都没有用。你能告诉我如何读入整个文本字符串吗

%macro fileinput;
%local i;
%do i= 1 %to &nfile;

      /* Store import path and output filename into macro variables*/
    data _null_;
    set files(firstobs= &i obs= &i);
    call symput('fpath', "&wtransfer.\" || trim(name));
    call symput('foutname', trim(newname));
    run;

    /* Excel import using libname method */
    Libname xlout pcfiles 
    server="&pcfilesserver." 
    port=&pcfilesport.
    path="&fpath.";
    data &foutname.;
    set xlout.PVS;
    textsize=32767;

    run;

    libname xlout clear; 
%end;
%mend;
%fileinput;

正如您在代码中看到的那样,
textsize=32767
是一个赋值语句,用于创建名为
textsize
的变量。看起来textsize是LIBNAME语句的一个选项,因此您可以尝试
LIBNAME xlout pcfiles。。。textsize=32767如果您使用的是9.4m2或更高版本,请尝试XLSX引擎。它不需要PCFILES服务器,我怀疑它会支持更多选项。谢谢!这很有效。