vb2005、WindowsXP、Excel2000で開発しています。

vb2005にて、Excel内にコーディングしてあるVBAの変数に値をセットする
ことは可能なのでしょうか。

Excel4MacroSheets.Applicationとかそうかなと思ったのですが行き詰って
しまいました。

どなたかご存知の方がいらっしゃいましたら教えて下さい。
宜しくお願いします。

このQ&Aに関連する最新のQ&A

A 回答 (1件)

>VBAの変数はどんな性格のものか。


またVBAの実行中のことか
VBA(ソース)コードがあって、そのVBAコードを改変して実行したいということか
ーー
変数とは、セルの値のセルのこととか(オブジェクト変数?)か
シートのセルの値に何か値をセットしたいとかか。これはプロパティの設定で、変数と言うと紛らわしい。プロパティ(エクセル(VBA)で設定を用意している限定的なもの)と表現すべきだ。
あるいはVBAコード作成者が勝手に合計という意味で変数ttlをプログラム中で使っていたとして、完成後実行中に、この値をどこかの段階でセットしたいなどのこことかーー>ありえない!

質問者は、開発者らしい人物のようだが、初めからそういうことが出来るように仕組んでないと、ただ組んだプログラムが在る
というだけの状態で、第3者が割り込んで自分向けに何かをするというのは不可能なことぐらい良くご存知でしょう。(COM)オブジェクトなどの仕組みにして、設定が許されて居ないと不可能でしょう。仕組みがわかっている場合はウイルスソフトなどのように別途の自分のやりたいことを勝手にするとか、機械語レベルの?命令を書き換えるとかは原理的には可能だと思うが。
特にコンパイルしたら、変数などというのは形も消えてしまうのではないか。
ーーー
Excel4Macroはエクセルシートやセルに関連しての結果目的を返す目的を持った一種のサブルーチン(関数というべきか)です。
こんなものがあったとしても質問の件に役立つとは思えない。
ほとんどそれらに対応する機能が、5.0以後のVBAのメソッド・プロパティがあるのではないか。
いままではエクセルを開かないで変数値を取るとき話題になったり、VBAを知らない人用に使われたりした回答が出たが。
一部で、VBAでは一発では取得できない結果もわかるものがあるようだが(例シート内のページ数の取得)
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!


人気Q&Aランキング