条件分岐について
2023-05-16 10:26
以前にもご質問させて頂いたのですが、なぜかうまくいきません。
お忙しいところ恐縮ですが教えていただければ幸いです。
画像のアクションを実行するとエラーがでてしまいます。
どこを修正すればいいか不明です。
やりたいこと
①X列の0だったら1を1だったら0
②E列の文字が10バイト以上なら左から10バイトとってきてほしい
上記を実行したいです。
よろしくお願いいたします。
回答を投稿するにはログインが必要です。
お忙しいところ回答ありがとうございます。
試してみたいと思います。
試してみたいと思います。
日本コンピュータシステム(CELFチーム)
パートナー
ベストアンサー
アクションセットを拝見しました。
このアクションセットだと8行目の「繰り返しを終了する」アクションで
3行目のループを抜けてしまうと思います。
そのため、9行目以降の処理に到達不可の記載になっているように思えます。
また、B4セルの値を1つずつ増やしています(7行目)が、
ループ処理の中(9行目)でB4セルに1をセットしているので
3行目のループ条件が成立し続けてしまう記載となっています。
①X列の0だったら1を1だったら0
②E列の文字が10バイト以上なら左から10バイトとってきてほしい
上記の2つの処理は同じ行で問題なければ、3行目のループだけあれば
問題ないように思います。以下にループの例を記載しました。
1ループ目(B1セルの値は1)
1、ループ開始 X列の1行目が空ではないか
2、①の処理(B4セルの値が1なのでX1の値を参照して処理)
3、②の処理(B4セルの値が1なのでE1の値を参照して処理)
4、B4セルをカウントアップ(B4+1)
5、ループの始めに戻る。
2ループ目(B1セルの値は2)
1、ループ開始 X列の2行目が空ではないか
2、①の処理(B4セルの値が2なのでX2の値を参照して処理)
3、②の処理(B4セルの値が2なのでE2の値を参照して処理)
4、B4セルをカウントアップ(B4+1)
5、ループの始めに戻る。
以上のようなアクションの実装で実現されてみてはいかがでしょうか。
このアクションセットだと8行目の「繰り返しを終了する」アクションで
3行目のループを抜けてしまうと思います。
そのため、9行目以降の処理に到達不可の記載になっているように思えます。
また、B4セルの値を1つずつ増やしています(7行目)が、
ループ処理の中(9行目)でB4セルに1をセットしているので
3行目のループ条件が成立し続けてしまう記載となっています。
①X列の0だったら1を1だったら0
②E列の文字が10バイト以上なら左から10バイトとってきてほしい
上記の2つの処理は同じ行で問題なければ、3行目のループだけあれば
問題ないように思います。以下にループの例を記載しました。
1ループ目(B1セルの値は1)
1、ループ開始 X列の1行目が空ではないか
2、①の処理(B4セルの値が1なのでX1の値を参照して処理)
3、②の処理(B4セルの値が1なのでE1の値を参照して処理)
4、B4セルをカウントアップ(B4+1)
5、ループの始めに戻る。
2ループ目(B1セルの値は2)
1、ループ開始 X列の2行目が空ではないか
2、①の処理(B4セルの値が2なのでX2の値を参照して処理)
3、②の処理(B4セルの値が2なのでE2の値を参照して処理)
4、B4セルをカウントアップ(B4+1)
5、ループの始めに戻る。
以上のようなアクションの実装で実現されてみてはいかがでしょうか。
日本コンピュータシステム(CELFチーム)
パートナー
ご回答ありがとうございます。
カウントアップの書き方がわかりません。
お手数ですが、ご教示いただけますと幸いです。
カウントアップの書き方がわかりません。
お手数ですが、ご教示いただけますと幸いです。
新日本コンピュータマネジメント株式会社
パートナー
こんにちは。
NCSさんの記載の通り、2つ目の繰り返し処理に、カウントアップがない為、
無限ループとなっており、修了をしないアクションになっております。
カウントアップを入れる方法でも動く様になりますが、
繰返し処理を1回で済ませる方法が理想と思います。
Step10にある繰り返し処理
「②E列の文字が10バイト以上なら左から10バイトとってきてほしい」
を、
Step6とStep7の間に移動すれば、1つの繰り返し処理の中で2つの変換が
できると思います。
ご確認、お試し頂ければと思います。
NCSさんの記載の通り、2つ目の繰り返し処理に、カウントアップがない為、
無限ループとなっており、修了をしないアクションになっております。
カウントアップを入れる方法でも動く様になりますが、
繰返し処理を1回で済ませる方法が理想と思います。
Step10にある繰り返し処理
「②E列の文字が10バイト以上なら左から10バイトとってきてほしい」
を、
Step6とStep7の間に移動すれば、1つの繰り返し処理の中で2つの変換が
できると思います。
ご確認、お試し頂ければと思います。
新日本コンピュータマネジメント株式会社
パートナー
日本コンピュータシステム(CELFチーム)
パートナー
こんにちは
エラーの内容から繰り返しの上限を超えたループを
アクションセット内で実施しているようですね。
画像を見る限りですが、9行目~12行目のループアクション内に
B4セルのカウンタをカウントアップするアクションが無いようです。
そのため、9行目からループし続けているのではないでしょうか。
ご確認いただければと思います。
エラーの内容から繰り返しの上限を超えたループを
アクションセット内で実施しているようですね。
画像を見る限りですが、9行目~12行目のループアクション内に
B4セルのカウンタをカウントアップするアクションが無いようです。
そのため、9行目からループし続けているのではないでしょうか。
ご確認いただければと思います。