5倍速!メールマガジン
外部アカウントで登録
受講生の声
新着の講座投稿
新着の講座コメント
新着のノート投稿
投稿一覧へ新着のノートコメント
表示できる投稿はありません。
サイト運営者紹介
小川 慶一講師/教材/システム開発者紹介
この学習サイトの教材制作、サポート、システム開発をすべてやっています。
表示できる投稿はありません。
この学習サイトの教材制作、サポート、システム開発をすべてやっています。
受講生さんの投稿
(投稿ID: 1002)
演習問題の作成途中でハマった点について質問です。
D列(Priority1)に1~5以外の数字を入れると、マクロ実行中のまま応答しなくなり、
タスクマネジャーから強制終了しました。
質問1
多分for ~ next 構文の中でE列の数字を修正した時にそこで別イベントが発生して
ということなんだと思いますが、それが原因でしょうか。
1~5入力時も同じようなことをやっているので何が違うんだろうといのがよくわかりません。
結果的に、select case 構文内にExit for を追加して抜け出ることができたんですが・・・。
質問2
中断できずに強制終了してしまったので、仕事中に発生すると少しいやだなと思った
んですが、フラグ制御についてよくわかってない段階でfor ~ next 構文を使うのは
あまりよくないんでしょうか。一般論というか作法的に。
とはいっても実務的には使いそうですので注意点等あったらお願いします。
ゲストさんのコメント
(コメントID: 2142)
丁寧にステップイン実行してみました。
やはり、以下の [c] で worksheet_change が再帰的に呼び出されることがくり返されていますね。フラグ立ててください。
ゲストさんのコメント
(コメントID: 2143)
ゲストさんのコメント
(コメントID: 2144)
ファイルは、以下から取得してください。
https://www.dropbox.com/s/jy0x6gm6lp3zhgs/fukudasanmacro.xlsm?dl=0
>小川様
>演習問題の作成途中でハマった点について質問です。
>D列(Priority1)に1~5以外の数字を入れると、マクロ実行中のまま応答しなくなり、
>タスクマネジャーから強制終了しました。
>
>質問1
> 多分for ~ next 構文の中でE列の数字を修正した時にそこで別イベントが発生して
> ということなんだと思いますが、それが原因でしょうか。
> 1~5入力時も同じようなことをやっているので何が違うんだろうといのがよくわかりません。
> 結果的に、select case 構文内にExit for を追加して抜け出ることができたんですが・・・。
>
>質問2
> 中断できずに強制終了してしまったので、仕事中に発生すると少しいやだなと思った
> んですが、フラグ制御についてよくわかってない段階でfor ~ next 構文を使うのは
> あまりよくないんでしょうか。一般論というか作法的に。
> とはいっても実務的には使いそうですので注意点等あったらお願いします。
>
>
>
>
受講生さんのコメント
(コメントID: 2145)
Subプロシージャを再帰的に呼び出してループしているのも
落ち着いてステップインでみればよくわかりました。
あと、Sheet2のサンプルの美しさもよくわかりました。
ありがとうございました。
ゲストさんのコメント
(コメントID: 2148)
>Subプロシージャを再帰的に呼び出してループしているのも
>落ち着いてステップインでみればよくわかりました。
よかったです。
困ったときはステップインです。
フラグによる制御についても、もうOKでしょうか?(このお返事の様子だとたぶんOKぽいですが)
>丁寧に説明していただいてありがとうございました。
>
>Subプロシージャを再帰的に呼び出してループしているのも
>落ち着いてステップインでみればよくわかりました。
>
>あと、Sheet2のサンプルの美しさもよくわかりました。
>ありがとうございました。
>
>
>