嘿夥計,
我正在使用論壇中的先前範例。
我的程式碼適用於我正在做的第一部分。
當我將值新增到新行時,我想將 machine 加 1。
所以下面想要 ABC_RC1,RC2,RC3... 不知道如何做這部分。

| 機器 | 手術 | 食譜名稱 | 資料列 |
| ABC_RC | 123456 | 測試 | [0.941279597;0.941279597;0.947636808] |
Names Default To Here( 1 );
dt = Data Table( "Untitled 166");
dtOut = New Table( "Final Output1",
New Column( "machine", character ),
New Column( "operation", numeric ),
New Column( "recipename", character ),
New Column( "Data_Column", character ),
New Column( "Data_1", numeric ),
);
For( i = 1, i <= N Rows( dt ), i++,
If( i == 1,
theRow = 0;
theRow = N Rows( dtOut );
);
If( dt:Data_Column[i] != "X",
dtOut << Add Rows( 3 );
For( k = 1, k <= 3, k++,
theRow++;
dtOut:machine[theRow] = dt:machine[i];
dtOut:operation[theRow] = dt:operation[i];
dtOut:recipename[theRow] = dt:recipename[i];
dtOut:Data_Column[theRow] = dt:Data_Column[i];
dtOut:Data_1[theRow] = Substr( Word( k, dt:Data_Column[i], ";" ), 2, 7 );
);
);
);
我有一種感覺,我不明白你需要什麼,但是:
如果您要加入機器的數字是 1、2、3 重複的序列,modulo() 函數是否可以滿足您的需求? 像下面這樣的東西嗎?
"ABC_RC" || Char( Modulo( Row(), 3 ) + 1 )
抱歉,連接不起作用,因為它與 1,2,3,4,5.... 我需要,1,2,3,1,2,3。
我可以這樣做嗎?
dtOut:RC[theRow] = 序列( 1, 2, 1, 1 );
或者只是創建一個新列並執行一個序列?