2013-12-15 460 views
1

我想導入EXCEL在SAS數據庫中,我使用了正確的命令,但SAS告訴我下面的錯誤:錯誤的LIBNAME語句的SAS

ERROR:連接: 錯誤:在LIBNAME語句的SAS

libname dir 'E:\SAS\sessio2\dades'; 
proc import out=dir.m 
datafile="E:\SAS\sessio2\dades\matrimonios.xlsx" 
DBMS=excel 
replace; 
RANGE="Hoja1$A1:AJ54"; 
getnames=yes; 
run; 

回答

1

我不確定它是你的libname語句路徑是不正確的還是你的SAS版本。如果您使用datafile="path.xlsx",那麼也請嘗試使用DBMS=.xlsx

如果這不起作用,或許嘗試更改datafile=.xlsx.xls我不確定您擁有哪個版本的SAS。

但是在9.1.3中最好使用.xls如果你的excel文件在.xlsx,只需打開它並保存爲2003 .xls版本。你的代碼似乎在我的電腦上工作正常,但這是使用我自己的Excel文件。

libname dir 'C:\sasdata'; 
proc import out=dir.m 
datafile="C:\sasdata\sfosch.xls" 
DBMS=excel 
replace; 
*RANGE="Hoja1$A1:AJ54"; 
getnames=yes; 
run; 
1

正如Yick所說,錯誤在您的PROC IMPORT聲明中。在後臺PROC IMPORT使用EXCEL引擎創建一個LIBNMAE語句。

有些事情可能是錯誤的:

  • 如果你的版本早於9.1.3,我不認爲你不能讀取 新XLSX格式。以舊格式保存文件,然後重試。
  • 確保您指定了正確的文件和路徑。
  • 確保您有正確指定的範圍。
  • Range語句可能很拗口。嘗試改爲指定SHEET =選項 。
  • 確保您已獲得ACCESS/PC文件許可。
+0

是的,我同意@DomPazz的範圍部分。如果我遇到錯誤,我通常不喜歡在這種情況下使用範圍語句。如果可以,也許可以嘗試通過評論範圍導入數據集。或者導入一個更簡單的數據集來測試你的代碼。 –

+0

@DomPazz我的SAS版本是9.1.3,我已經更正了excel文件來格式化.xls,並且它發生了同樣的錯誤。 –

+0

@OriolPrat檢查數據文件中的路徑=你的excel文件是否絕對正確。如果可以的話,請將範圍說明註釋掉,以便更好地隔離錯誤。 –