如何使用十六進位格式遞增循環?你好,
我想建立一個清單並使用以下條目填充它:AB63、AB64、... AB79、AC63、...AZ79。
不幸的是,我無法弄清楚如何以十六進制遞增(“J”= Hex(4A) 等)
因此,對於字母 JO (Hex4A - Hex4F),我創建了單獨的循環,這非常麻煩。
有誰知道一種以十六進制遞增的方法,這樣我就可以將這一切保留在一個循環中?
感謝您的協助。
凱文
JMP17
// Loop rows AB-AI; loop columns 63-79
// A = ASCII (41)
// I = ASCII (49)
For( firstChar = 41, firstChar < 42, firstChar++,
For( secondChar = 41, secondChar < 50, secondChar++,
For( number = 63, number < 80, number++,
// Build the list element
firstCharVal = Hex To Char( Char( firstChar ) );
secondCharVal = Hex To Char( Char( secondChar ) );
dataList[listIndex] = firstCharVal || secondCharVal || Char( number );
// Increase the index
listIndex++;
);
);
);
// Loop row AJ; loop columns 63-79
// J = ASCII (4A)
For( firstChar = 41, firstChar < 42, firstChar++,
For( number = 63, number < 80, number++,
// Build the list element
firstCharVal = Hex To Char( Char( firstChar ) );
dataList[listIndex] = firstCharVal || Hex To Char( "4A" ) || Char( number );
// Increase the index
listIndex++;
);
);
自動化和腳本編寫回覆:如何使用十六進位格式遞增循環?您可能會看一下 For Each() 迴圈結構。它具有更靈活的索引結構。
回覆:如何使用十六進位格式遞增循環?ForEach 打得好!
first = {"A", "B"};
second = {"D", "E", "F"};
number = 9 :: 11;
For Each( {f}, first, //
For Each( {s}, second, //
For Each( {n}, number, //
Write( Eval Insert( "\!n^f^^s^^right(char(/*6 digits of leading zeros*/1e6+n),2)^" ) )
)
)
);
AD09
廣告10
AD11
AE09
AE10
AE11
AF09
AF10
AF11
BD09
BD10
BD11
BE09
貝10
BE11
BF09
BF10
BF11
回覆:如何使用十六進位格式遞增循環?克雷格,
哇,非常感謝。我將花更多時間來理解“Write”行。我感謝您的幫助!
凱文
回覆:如何使用十六進位格式遞增循環?txt="hex";first = {"A", "B"};
second = {"D", "E", "F"};
number = 9 :: 11;
For Each( {f}, first, //
For Each( {s}, second, //
For Each( {n}, number, //
txt=txt||( Eval Insert( "\!n^f^^s^^right(char(1e6+n),2)^" ) )
)
)
);
d1=Open( Char To Blob(txt), "text" );感謝專家!
回覆:如何使用十六進位格式遞增循環?@lala - 有趣的例子。說明: open 函數通常使用檔案名稱作為其第一個參數,但可以採用實際資料的 blob 參數,這需要第二個參數,因為沒有檔案副檔名。 「text」表示將資料解釋為文字文件,即類似 CSV 的文件。此 CSV 每行一個值且沒有逗號。
回覆:如何使用十六進位格式遞增循環?謝謝克雷格!
