带点字符的SAS宏函数输入字符串

带点字符的SAS宏函数输入字符串,sas,Sas,我试着写下: %ACTUAL_CAL(CQ_20140203,MINUTE15_group0.csv) 但是,它返回一个错误: 320 MINUTE15_group0.csv ___________________ 22 201 ERROR 22-322: Syntax error, expecting one of the following: a name, a quoted

我试着写下:

%ACTUAL_CAL(CQ_20140203,MINUTE15_group0.csv)
但是,它返回一个错误:

320         MINUTE15_group0.csv
            ___________________
            22
            201
ERROR 22-322: Syntax error, expecting one of the following: a name,
              a quoted string.
我想知道为什么CQ_20140203字符串运行良好,而后一个字符串返回错误?是因为这个点吗?我该怎么修

更新:

我计划以后像这样使用
MINUTE15_group0.csv

%MACRO ACTUAL_CAL(DATE_VAR,fname);
DATA TICKERS_NBBO;
    INFILE 'groups/&fname';
    INPUT SYMBOL $;
RUN;
%MEND;

因此,我认为简单地用引号包围
MINUTE15_group0.csv
是行不通的,因为它稍后还会将引号添加到我的
infle
路径中

结果证明乔是对的。我应该用双引号而不是单引号包围宏变量

以下内容应该是正确的:

INFILE "groups/&fname";

你所拥有的东西没有本质上的错误;像你描述的那样,一个点在一个宏变量中是完全可能的。您发布的错误与宏参数本身无关,但它是由宏参数的使用所导致的错误。您需要显示完整的代码并给出错误(即,如果我将粘贴直接从问题复制到SAS窗口,它将运行并显示错误)。您的示例宏应该可以正常工作,除了它有单引号,需要双引号来解析宏变量。