エラー「接続: クラスが登録されていません」の解消方法

[OS] Windows
[リリース] 9.2以降
[キーワード] Excel インポート/エクスポート エラー

[質問]

ExcelファイルのインポートやエクスポートをIMPORT/EXPORTプロシジャにて実行した場合、次のようなエラーメッセージが出力されます。

*************************************************************
1    PROC IMPORT OUT=class
2      DATAFILE="c:¥temp¥test.xls"
3      DBMS=EXCEL REPLACE;
4    RUN;

ERROR: 接続: クラスが登録されていません
ERROR: LIBNAMEステートメントのエラーです。
*************************************************************

エラーの解消方法を教えてください。

[回答]

SAS のビット数が 64-bit、Microsoft Office のビット数が 32-bit の環境において、Excel ファイルのインポートやエクスポートを行うとエラーが発生します。

エラーを解消するには、SAS PC Files Server というアプリケーションをインストールする必要があります。SAS PC Files Server を追加インストールする方法は次のFAQをご覧ください。

SAS PC Files Server の追加インストール方法

SAS PC Files Server がインストールされている環境で Excelファイルのインポートやエクスポートを行うには、従来のプログラムや操作を一部変更する必要があります。

<SAS PC Files Serverを用いてExcelファイルをインポートする方法>

従来の SAS では、IMPORTプロシジャで Excel を扱う場合に DBMS=EXCEL と指定しますが、SAS PC Files Server がインストールされている環境では次のプログラムのように、DBMS=EXCELCSと指定する必要があります。

なお、Excelファイルをエクスポートする場合は構文をIMPORTプロシジャからEXPORTプロシジャに読み替えて下さい。

プログラム例)

PROC IMPORT OUT=work.test
  DATAFILE="c:¥temp¥book1.xlsx"
  DBMS=EXCELCS REPLACE;
RUN;

DBMS=EXCELCSがサポートするオプションは、DBMS=EXCELと一部異なります。詳しくは以下のドキュメントをご覧ください。

Microsoft Excel Workbook Files
https://support.sas.com/documentation/cdl/en/acpcref/66980/HTML/default/viewer.htm#n0msy4hy1so0ren1acm90iijxn8j.htm

該当箇所は[Statement Options to Import or Export Excel Data Files on Windows, Linux, and UNIX]をご覧ください。