Excel 使用SAS导入时截断字符

Excel 使用SAS导入时截断字符,excel,import,sas,truncation,tab-delimited,Excel,Import,Sas,Truncation,Tab Delimited,我有一个Excel电子表格,上面有公司数据和说明。一些单元格中基本上包含迷你文章,一页又一页的纯文本包含在单个单元格中。SAS在导入文件时一直给我带来问题,因为它会截断一些较长的单元格,并且文本会在句子中间被截断。有没有办法避免这种情况?我尝试将文件保存到以制表符分隔的文本文件中,但没有成功 谢谢 正如您所说,导出到制表符分隔或csv可能是一种方法。确保字符串也用引号括起来。但是您是否为包含长单元格的变量指定了长度?根据SAS的数据,最大长度是32767个字符,所以也许可以尝试尽可能大的数字——

我有一个Excel电子表格,上面有公司数据和说明。一些单元格中基本上包含迷你文章,一页又一页的纯文本包含在单个单元格中。SAS在导入文件时一直给我带来问题,因为它会截断一些较长的单元格,并且文本会在句子中间被截断。有没有办法避免这种情况?我尝试将文件保存到以制表符分隔的文本文件中,但没有成功


谢谢

正如您所说,导出到制表符分隔或csv可能是一种方法。确保字符串也用引号括起来。但是您是否为包含长单元格的变量指定了长度?根据SAS的数据,最大长度是32767个字符,所以也许可以尝试尽可能大的数字——希望小于这个数字

此外,lrecl(文件每行的最大长度)的最大值应为32767

data test;
  length company_name $20 description1 description2 $10000;
  infile my_tab_dlm_file lrecl = 50000 dsd delimiter = '09'x;
  input company_name
        description1
        description2
   ;
run;

如果您拥有SAS/ACCESS许可证。您可以使用libname访问Excel电子表格和


(但是@Neil Neyman的答案听起来也不错)

您可能还需要检查您导入的文本是否包含任何导致过早截断的制表符。。。没人喜欢这个……谢谢。手动输入所有变量有点困难,但它完成了任务。re:Rob Penridge:这就是为什么在字符串周围使用引号(在原始制表符分隔的数据中)可能会有所帮助。DSD选项将忽略引号中包含的选项卡。