过时的继续字符 (&)

在以前的版本中,& 符号表示命令在下一行中继续,例如:
PLS C18 = C1-C17 c1*c2 c1*c3 c1*c4 c1*c5 c1*c6 c1*c7 c1*c8 c1*c9 c1*c10 c1*c11& c1*c12 c1*c13 c1*c14 c1*c15 c1*c16 c1*c17;
在最新版本的 Minitab 中,具有 & 符号的会话命令会产生错误。这些命令会改为在 1 行中键入全部内容。
PLS C18 = C1-C17 c1*c2 c1*c3 c1*c4 c1*c5 c1*c6 c1*c7 c1*c8 c1*c9 c1*c10 c1*c11 c1*c12 c1*c13 c1*c14 c1*c15 c1*c16 c1*c17;

#(注释符号)

用于向 Minitab 宏或可执行文件中添加注释而不会干扰命令本身。执行命令时,Minitab 会忽略从注释符号 (#) 到行末的任何内容。

在后续的示例宏中,添加了注释以解释每行命令语言要完成的任务:

GMACRO #启动全局宏
Random #对宏进行命名
rand 10 C1。 #向 C1 中添加 10 行随机数据
ENDMACRO #结束宏

添加注释可让其他人更容易地使用和编辑您的宏和可执行文件。

使用 READ 命令输入数据时,除了使用空格外,还可以使用什么符号来分隔条目?

在使用 READ 时,您可以使用空格或逗号分隔数据条目。例如:

READ C1 C2 1 2 3,4 END。

KKCAT、KKNAME 和 KKSET 命令的宏语法是怎样的?

KKCAT 将第一个常量 K 中的文本与第二个常量 K 中的文本合并(即组合)在一起,并将组合后的文本字符串存储在第三个常量 K 中。例如,如果常量 K1 包含“Normality”,常量 K2 包含“Test”,并且您要将“Normality Test”存储在常量 K3 中,请使用以下语法:
KKCAT K1 K2 K3

KKNAME 可将列 C 的名称存储在常量 K 中。例如,如果您要将列 C1 的名称存储在常量 K4 中,请使用以下语法:

KKNAME K4 C1

KKSET 可将双引号中的文本存储在常量 K 中。例如,如果您要将单词 Minitab 存储在常量 K5 中,请使用以下语法:

KKSET K5 "Minitab"

是否有从全局宏或可执行文件中退出工作表的命令?

是的,您可以使用 WORKSHEET 命令及其 CLOSE 子命令。假设您希望关闭名为“Worksheet 1”的工作表。请使用以下命令:

WORKSHEET "Worksheet 1"; CLOSE.

如果您不想提示用户保存要退出的工作表,也可以添加 NOPROMPT 子命令:

WORKSHEET "Worksheet 1"; CLOSE; NOPROMPT.

在编写全局和局部宏时,需要使用什么命令将控制权返回给交互式 Minitab?

在全局或局部宏中,EXIT 命令将控制权返回给交互式 Minitab。

注意

在可执行文件中,EXIT 可终止 Minitab。

我如何才能存储列或常量的数据类型(文本、实数或整数、日期/时间值,或者没有任何数据)?

使用 DTYPE 命令可以将数据类型存储为常量。例如,假设您想要将 C1 的数据类型存储在 K1 中。

  1. 选择查看 > 命令行/历史记录
  2. 键入以下内容:DTYPE C1 K1
  3. 单击运行
    K1 为 0 表示 C1 包含文本,1 表示实数,2 表示整数,3 表示日期/时间值,10 表示空。
    注意

    如果此列包含整数、实数或日期/时间值,但将其格式化为文本(即,列编号带有 -T),则 K1 等于 0。

如果希望在宏中使用带后缀的变量,是否必须将其包含在模板中?

如果带后缀的变量具有确定的范围,则不必在模板中包括它。例如,可以声明列 b.1-b.10 而且不在模板中包括它。

MACRO SAMPLE a MCOLUMN a b.1-b.10

如果带后缀的变量具有未确定的范围,则必须在模板上定义带后缀的变量或后缀。例如,如果 n 是常量,则可以在模板中包括整个带后缀的变量或整个后缀。

MACRO SAMPLE a b.1-b.n MCOLUMN a b.1-b.n

MACRO SAMPLE a b n MCOLUMN a b c.1-c.n

您可以使用一个可选子命令,以便在模板上包含具有不确定范围的带后缀的变量,但用户在调用宏时不必包含它。例如,

MACRO SAMPLE a b; OBS n. MCONSTANT a b n DEFAULT n = 600 LET n = a * b

如何使用宏找到工作表中第一个可用的(空)列?

假设您在编写编写全局宏而且希望将工作表中的第一个可用列命名为“EMPTY”。下面是名为 FINDNEXT 的全局宏中的命令。

GMACRO FINDNEXT DO K101 = 1:1000 DTYPE CK101 K102 IF K102 = 10 NAME CK101 "EMPTY" EXIT ENDIF ENDDO ENDMACRO
注意

此宏假设您的列数不超过 1000,并且常量 K101、K102 和 K103 为空。

注意

有关 DTYPE 会话命令的更多信息,请转到 Minitab 会话命令帮助。单击字母顺序命令列表。单击 DTYPE

在宏中,我该如何对含有常量值的列命名?

您可以使用 NAME 命令。例如,要对含有 K1 值的列 C1 命名,请使用以下命令:

NAME C1 K1