我正在运行 SAS 的 VBA 程序。用于此的 SAS 代码基本上如下所示:
%let worksheet =&i; *worksheet number;
%let xlsfile = %STR(""C:\Data\Excel Workbook.xlsx"");
%let csvfile = %STR(""C:\Data\CSV File..csv"");
x 'cd "C:\Data\MN2013\Alignment\Data\SAS Programs"';
x "XlsWsToCsv.vbs &xlsfile &worksheet &csvfile";
我需要能够在 xlsfile 和 csvfile 中的文件路径的开头和结尾包含两个双引号(即“”),以便 VBA 程序识别文件路径中的空格并正确运行。
我的问题:
我使用 SAS 9.3 在 SAS Enterprise Guide 中运行它。在我的日志中,直接在读入变量定义后,双引号用红色下划线(通常表示错误)和下面的数字49。没有错误消息,而是以绿色显示我收到以下注释:
NOTE 49-169: The meaning of an identifier after a quoted string might change in a future SAS
release. Inserting white space between a quoted string and the succeeding
identifier is recommended.
对我来说,这表示 SAS 正在阅读这些双引号。不知何故,它们只是被部分掩盖了。我的 VBA 程序运行,所以我可以继续这个;但我喜欢干净的错误日志。有人对如何完全屏蔽我的 xlsfile 和 csvfile 变量有任何建议吗?我尝试使用 %STR(如上面的示例所示)、%BQUOTE、%SUPERQ 和其他一些东西来完成这项工作。