DDE SAS使用VBA命令

时间:2014-07-01 09:14:57

标签: sas dde

我正在尝试使用sas中的dde编写代码,这将在excel中推广我的单元格,这些单元格之前已格式化为带有2位小数的数字。我没有在日志中收到任何错误消息,但我的excel表被put语句中的代码覆盖了RANGE(“A1:A3”)。NumberFormat =“General”而不是将格式应用于它。我不确定我哪里出错了。有人可以帮忙吗?

这是我的示例代码,

注意:在运行此代码之前打开Excel引擎

filename ddeopen dde "EXCEL|System";
options noxwait noxsync;
data _null_;
   x=sleep(3);
run;

/ *在Excel * /

中打开所需的文件
DATA _null_;
    file ddeopen;
    PUT "[OPEN(%bquote("C:\Documents and Settings\S\Desktop\test1.xls"))]";
    x=sleep(3);
run;

/ *在打开的Excel工作表* /

中将单元格格式化为常规
 filename ddeopen dde "EXCEL|Sheet1!r1c1:r3c1";
data _null_;
file ddeopen;
  x=sleep(3);
PUT "[%bquote(RANGE("A1:A3").NumberFormat="General")]";
RUN;

非常感谢 西米

1 个答案:

答案 0 :(得分:0)

我认为您需要首先使用'R1:C1'样式选择范围:

put ‘[select("r1c2:r100c2")]’;

然后,您可以使用以下命令格式化该选择:

put '[Format.Number("General")]';

然后,在导出数据之前,应使用单元格的“常规”格式样式。