Q&A

回答の並べ替え:
投稿新規に質問を投稿する

実行回数を制御する数式の作り方について教えて下さい

mini robot mini robot

2021-12-09 15:36

7行目の制御文(H5-H6)<3

こんにちは。制御の数式がわかりません。よろしくお願い致します。
【やりたい事】
・入力画面が3行までしか入力出来ません。
・データーが1行~3行の場合は入力後、画面更新
・データーが4行以上の場合も3行入力後、一度画面更新して、次データー入力。
→そこで、データーを3行(3行以下も含む)入力したら、更新プログラムに進むような制御をしたいのですが、別紙の式ですと、1行づつ入力して、更新してしまいます。7行目の式はどんな制御文にすれば実現できるのでしょうか?
((=H5)-(=H6))<3も試してみましたが、結果は同じでした。
ちなみに過去のQAも検索したのですが、見つけられませんでした。お手数ですが、教えて頂けませんか?、よろしくお願い致します。

mini robot mini robot
1214_メインプログラム
Yexiongmao 様
こんにちは。追記までして頂いてありがとうございます。
アドバイス頂いた通りにして、且つ、一度、プログラムをすべて消して、全く同じですが作り直してみたら、思うように動きました。ありがとうございました。これもYexiongmao様のお蔭です。本当にありがとうございました。
また、ご質問頂いた件にお答えすべくすべてのプログラムを添付致しました。
まず入力①と②ですが、データーが何行あるかわかりませんので、入力①(11行目)で先頭行のデーターを入力画面の1行目の箱に構造解析で入力し、入力②(17行目)でIF分の条件を満たした場合に今度はTabで送りながら入力するような仕様に致しました。これでお答えになっていますでしょうか?、今回は本当にお世話になり、大変助かりました。早速、実務にて活用したいと思います。ありがとうございました。
※尚、まずはチャネルフラグ2にてループが出来るか?、その他、ロジックに間違いはないか?、をテスト中でフラグ1と3(19-20行目)については未完成の状態です。
Yexiongmao Yexiongmao
こんにちは。

このアクション(推測ですが「05_明細入力①」)は何をトリガーにして起動しているのでしょうか?
また、11行の「06_明細入力」とは、何をするアクションでしょうか?

また、制御文2についてですが、30はINDIRECTの引数が文字列ではなくセル参照になっているので条件がERRORを返しますが、このアクション自体はERRORにならず条件を満たさないとして繰り返しが終了します。
31はINDIRECTの引数は文字列になるのでERRORにはなりません。また、trimの引数は本来文字列ですが、数値でもERRORにはならないようです。
trimが返す値も本来文字列になりますので、29と同じになるかはわかりません。
数値にtrimは使わないほうが良いでしょう。
12/13追記
「シート設定」の「互換性オプション」の「数値に変換できる文字列同士の大小比較は数値として比較する」にチェックすれば問題無いようです。
mini robot mini robot
質問_制御文2
Yexiongmao様へ
お世話になります。早速のご回答ありがとうございます。
そうだったのか、、、と思い早速試してみたのですが、反応しません、、、せっかくアドバイス頂いたのにすみません。
【設定】
・昨日添付5行目_H5に最初のコードの開始行19行目の19をセット
・昨日添付6行目_H6に=H5として、その行数をコピー
・昨日添付7行目_3行入力したら、添付13行目まで飛んで、登録アクションまで進む
【実現したい事】
・1行目入力時、H5=19、H6=19→=(H5-H6)=0<3なのでループ
・2行目入力時、H5=20、H6=19→=(H5-H6)=1<3なのでループ
・3行目入力時、H5=21、H6=19→=(H5-H6)=2<3なのでループ
・4行目入力時、H5=22、H6=19→=(H5-H6)=3<3とはならず、添付13行目の登録アクションへ進む、、、としたいのですが・・・動きません。
本日、添付の資料のように行き当たりばったりで式を試しましたが、どれも反応しませんでした。お手数ですが、解決策がわかれば教えて頂けると助かります。よろしくお願いいたします。

Yexiongmao Yexiongmao
メダルベストアンサー
こんにちは。

=(H5-H6)>3 でどうでしょうか?

先頭の=は式であることを表す予約語です。
比較演算子を使った式は先頭の=の後に記述します。
例えば、1=2は文字列です。=1=2はFALSEを返します。
解っていても意外とはまることがありますね。