我已经定义了一个用于运行批量自定义表的函数:
DEFINE !xtables (myvars=!CMDEND)
CTABLES
/VLABELS VARIABLES=!myvars retailer total DISPLAY=LABEL
/TABLE !myvars [C][COLPCT.COUNT PCT40.0, TOTALS[UCOUNT F40.0]] BY retailer [c] + total [c]
/SLABELS POSITION=ROW
/CRITERIA CILEVEL=95
/CATEGORIES VARIABLES=!myvars ORDER=D KEY=COLPCT.COUNT (!myvars) EMPTY=INCLUDE TOTAL=YES LABEL='Base' POSITION=AFTER
/COMPARETEST TYPE=PROP ALPHA=.05 ADJUST=BONFERRONI ORIGIN=COLUMN INCLUDEMRSETS=YES CATEGORIES=ALLVISIBLE MERGE=YES STYLE=SIMPLE SHOWSIG=NO
!ENDDEFINE.
I can then run a series for commands to run these in one batch.
!XTABLES MYVARS=q1.
!XTABLES MYVARS=q2.
!XTABLES MYVARS=q3.
但是,如果表具有相同的行和列,则自定义表会冻结:
!XTABLES MYVARS =零售商。
罪魁祸首似乎是SLABELS。我在v24之前没有遇到过这个问题。
答案 0 :(得分:0)
宏有一个名为MYVARS的参数,它表示可以列出多个变量,但是,如果这样做,它将生成一个无效的命令。还有别的东西需要注意。我可以在V24中看到无限循环。在V23中,会生成错误消息。