• 締切済み

subを連続で実行する

http://okwave.jp/qa/q8901279.html このページで外部資源を用いないと変数を保存できないことを教えていただきました。 それと関連した別の質問なのですが あるsub 1を実行し、それの終了とともに別のsub 2を実行したいのですが call subを使う方法だと必ずsubの中で別のsubを呼び出すかたちになってしまいます。 subを入れ子にせずに、subを連続で使う方法はありますか? sub 3を作成し、そこにsub1とsub2を入れるというのも無しです。 よろしくお願いいたします。

みんなの回答

回答No.2

こんにちは。 >このページで外部資源を用いないと変数を保存できないことを教えていただきました。 Out of Question にはなりますが、前回の回答者のベストアンサーさんとは別に、値や文字列を残す場合は、一般的に、Office VBAでは、初級レベルで、カスタム・プロパティに保存すると教わります。レジストリやそれ以外にもありますが、そんなマニアックな方法はお勧めしません。 >subの中で別のsubを呼び出すかたちになってしまいます。 >subを入れ子にせずに、subを連続で使う方法はありますか? まず、それの何が悪いのでしょう。VB系の基本でしょう? >sub 3を作成し、そこにsub1とsub2を入れるというのも無しです。 このままの内容では、いわゆる、子供たちの「●●ごっこ」です。 そうでなければ、構造化プログラミングの否定です。 そういう場合、どうしてもというなら、オブジェクトに組み込みこませ、インスタンスを生成することにはなるでしょう。しかし、もう少し、VB系の基礎的な知識を身につけられたほうがよいのではありませんか?前回の質問からすれば、UserFormの問題でしょう。UserFormに、Subプロシージャを呼び出すということはあまりしませんが、なぜ、Subプロシージャ(一般的には標準モジュールに置きます)を呼び出す意味さえ、分かっていらっしゃらないようです。 その目的に反する問題が出てきて、初めて、人に理解できる質問だと思いますね。

YURUE
質問者

お礼

カスタム・プロパティ とは何でしょうか? 検索してもかからなかったので教えていただけないでしょうか?  

  • hitomura
  • ベストアンサー率48% (325/664)
回答No.1

すみません、以下の点の補足をお願いいたします。 あなたがそもそもやりたい処理はいったいどのようなものでしょうか。 一連の質問を見ていると、あなたには連続して行いたい複数の処理があって、その実装の際に必要と思われる事項を質問しているようにお見受けします。 しかし、そのような場合、漠然とした一般論ではなくそもそもの問題を提示していただくとその問題点に対する別の視点が寄せられることがあります。 今回のあなたの抱えている事項もそれに該当していそうな匂いがいたします。 また、 > sub 3を作成し、そこにsub1とsub2を入れるというのも無しです。 というのはなぜでしょうか。 > あるsub 1を実行し、それの終了とともに別のsub 2を実行 するのに適切な手段の一つなので、それを否定される理由をうかがいたいのですし、このような特殊な条件を指定なさるからにはあなたが説明していない何らかの背景が存在するのではと思っております。

関連するQ&A