こんにちは、
特定の仕様制限のセットに基づいて「合格/不合格」を計算しようとしています。 私が直面している問題は、ウェハ上に約 386 個のデバイスがあり、それらはすべて異なる仕様制限を持つ 16 の異なるチャネルでテストされていることです。 さらに、2 つの異なるテスト条件があります。 私が持っている唯一の解決策は、大量のIF()ステートメントです
If( (:Channel == 0 ) & (:test_output >= 16) & (test_output <= 22), 1, 99)
new column( "合格/不合格") << Formula( If( 条件、結果 1 など)
もっと簡単な方法があれば、私は全力で耳を傾けます。
ありがとう
このアクションを実行する必要があるテーブルの 1 つを添付しました。
ご入力ありがとうございます。最終的には次のことを行うことになりました
new column( "I/O" ) << Formula(
If(
(:trmode == "Rx") & (:Channel == 0) & (:TEST_OUTPUT >= 6.16) & (:TEST_OUTPUT <= 23.59), 1,
(:trmode == "Rx") & (:Channel == 1) & (:TEST_OUTPUT >= 22.47) & (:TEST_OUTPUT <= 36.72), 1,
(:trmode == "Rx") & (:Channel == 2) & (:TEST_OUTPUT >= 20.65) & (:TEST_OUTPUT <= 33.77), 1,
(:trmode == "Rx") & (:Channel == 3) & (:TEST_OUTPUT >= 21.79) & (:TEST_OUTPUT <= 41.64), 1,
(:trmode == "Rx") & (:Channel == 4) & (:TEST_OUTPUT >= 18.73) & (:TEST_OUTPUT <= 32.72), 1,
(:trmode == "Rx") & (:Channel == 5) & (:TEST_OUTPUT >= 18.53) & (:TEST_OUTPUT <= 32.42), 1,
(:trmode == "Rx") & (:Channel == 6) & (:TEST_OUTPUT >= 23.42) & (:TEST_OUTPUT <= 40.84), 1,
(:trmode == "Rx") & (:Channel == 7) & (:TEST_OUTPUT >= 21.96) & (:TEST_OUTPUT <= 47.10), 1,
(:trmode == "Rx") & (:Channel == 8)</img> & (:TEST_OUTPUT >= 18.98) & (:TEST_OUTPUT <= 48.50), 1,
(:trmode == "Rx") & (:Channel == 9) & (:TEST_OUTPUT >= 20.07) & (:TEST_OUTPUT <= 41.04), 1,
(:trmode == "Rx") & (:Channel == 10) & (:TEST_OUTPUT >= 25.25) & (:TEST_OUTPUT <= 49.21), 1,
(:trmode == "Rx") & (:Channel == 11) & (:TEST_OUTPUT >= 21.91) & (:TEST_OUTPUT <= 35.20), 1,
(:trmode == "Rx") & (:Channel == 12) & (:TEST_OUTPUT >= 22.49) & (:TEST_OUTPUT <= 40.70), 1,
(:trmode == "Rx") & (:Channel == 13) & (:TEST_OUTPUT >= 25.39) & (:TEST_OUTPUT <= 41.81), 1,
(:trmode == "Rx") & (:Channel == 14) & (:TEST_OUTPUT >= 22.50) & (:TEST_OUTPUT <= 41.92), 1,
(:trmode == "Rx") & (:Channel == 15) & (:TEST_OUTPUT >= 23.65) & (:TEST_OUTPUT <= 46.53), 1, 0
)
);
これが私の当初の考えでしたが、テスト エンジニア/管理者が希望する場合は制限を調整する自由を与えたいと考えました。
すべての情報を記載していなかったので、申し訳ありませんでした。 添付されているのは、メイン ウィンドウで [yield] ボタン ボックスを押すとポップアップ表示される、全体的なデータ プル スクリプトのサブスクリプトです。 このスクリプトで設定された変数をネストされた if() ステートメントで使用したいと考えていました。
これまでのご意見ありがとうございます。
Excel でこれを行った方法は、最速ではありませんが、間違いを避けるのに役立ちます。IF と AND を使用してチャネルごとに 0/1 列を作成し、それが仕様制限内にあるかどうかを確認します。次に、列を乗算するだけです。すべてのチャネルが制限内にある場合、1 のみが得られます。
チャネル、テスト条件、上限値、下限値の列を含む新しいデータ テーブルを作成します。次に、チャネルとテスト条件を照合してテーブルを結合するだけです。次に、上限値と下限値の列を使用して合否を計算します。