人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

かなり無理っぽいですが質問します。VBA(しかもMS-Word2003なんですけど)、ある一連のコード(といっても多数のモジュールを渡り歩いて帰ってくる)を実行すると、どこかの変数に「98」が代入されます。変数名は分かりません。しかし必ず代入されています。

この98が代入された変数を突き止めることはできますか?
変数名が知りたいのです。
私にはどうにもできないので教えてください。
よろしくお願いします。

(F8押しながらすべての変数を追っかけるのは無しで・・・お願いします)

●質問者: にぎたま
●カテゴリ:コンピュータ
✍キーワード:MS-Word VBA コード モジュール 変数
○ 状態 :終了
└ 回答数 : 1/1件

▽最新の回答へ

1 ● airplant
●60ポイント

「どこかの変数に98が代入」というシチュエーションが良く分からないのですが、、、

どの変数に代入されたかということは、分かると思うのですが、それが分からないのですね。


変数aがある値になったらブレークするということは、VBAにて次の設定でできます。

デバッグ → ウォッチ式の追加 → 式に「Not (a - 98)」 → 対象のプロシージャとモジュールはその変数があるスコープを設定 → ウォッチの種類:式がTrueのときに中断を選択

変数分書く必要がありますので、変数が100個とかあるなら別手段がいいかも知れません(ロジックのチェックなど)。


これでマクロを実行すれば、変数が特定の値になったときに止まり、どの変数だったかが分かります。

http://www.google.co.jp/ (dummy)

◎質問者からの返答

ながらくウォッチの上でのご回答ありがとうございます。

まず質問文にも書いたとおりですが、変数名は分かりません。

F8押しながら目で追っていくのもうんざりするほど長いものでして、当然変数の数もかなりのものです。

確かにウォッチ式に入れていけばいいですけど、それにはまずすべての変数名を書き出さなければなりません。

いや、せめて、「dim hoge as 数値型」を探してリストアップする必要があります。ちょっとはマシですけど。

しかしこれは最終手段です。

今やりたいのは「変数名が不定のウォッチ式」のようなものです。

「どこかの変数 = 98」がtrueになったら中断する

みたいな感じです。

回答上限を2にあげておきます。

コメント欄もあけておきます。

ありがとうございました。

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ