エクセルのマクロを組んでボタンを押すとそのマクロプログラムが実行するようになっているのですが、マクロ部分を修正してもボタンを押すと修正前のプログラムが実行されて困っています。

ボタンは入力フォームの中に入っている形式のボタンです
ボタンを押したときに実行するマクロを切り替えればよいのだと思うのですが。。教えてください
エクセル2007です。

回答の条件
  • 1人2回まで
  • 登録:2009/04/09 12:36:15
  • 終了:2009/04/16 12:40:04

回答(2件)

id:knight_apple No.1

knight_apple回答回数98ベストアンサー獲得回数112009/04/09 14:07:43

ポイント35pt

ボタンに登録されているマクロと

修正しているマクロが違うという事では?

 

マクロをどんなに修正しても、修正前のマクロが動くという事は

壊れないマクロという事になりそれはそれで凄いです

id:mmmmml

マクロ自体は1つしか登録されていないので・・

入力フォーム内のボタンからマクロを実行するところに

何かありそうなのですが、わからないのです

2009/04/09 14:57:01
id:gatchan No.2

gatchan回答回数9ベストアンサー獲得回数12009/04/09 16:06:37

ポイント35pt

Excel2007はちょっとわかりませんが、

まず、VBエディタ内での編集後での"保存"をして、ボタンで実行させてみて下さい。


それで、やっぱり動きが変わらないのなら、ボタンに登録されているマクロが違うマクロということだと思いますが。


マクロの記述場所は、用途によって何箇所かあります(標準モジュール、シートオブジェクト、フォームオブジェクトなど更には別のファイルのマクロなど)ので違うところ(のマクロ)を編集しているということはないですか?

(記述場その違う同じ名前のマクロ名もあり得るかも)


まずこの辺で切り分けてみて下さい。

id:mmmmml

ありがとうございます。

新たにボタンを追加してマクロと結びつけると正しく動作します。

もともとのボタンは入力フォームの内部に埋め込まれているので

その入力フォームが手元にないと編集できないようですね。

2009/04/10 11:17:24
  • id:knight_apple
    knight_apple 2009/04/09 15:09:31
    ボタンを右クリックして、マクロの登録から
    修正したマクロを選択すると良いだけですよ
    おそらく、外部ファイルのマクロを参照している状態ではないかと。。。

  • id:SALINGER
    マクロの先頭にブレークポイントを設定して、ステップインで1行ずつ実行させて、修正箇所が呼び出せれているか調べてみればいいです。
  • id:knight_apple
    knight_apple 2009/04/11 01:19:33
    入力フォームというのは
    ひょっとしてUserFormの事ですか?
    またはダイアログの事ですか?
    それともシート上に作った入力補助用のフォーム群のような物ですか?
     
    いずれにしろコードを表示して
    登録されているマクロを再設定する必要がありますね。。。
     
    フォームを作り直してみてはいかがでしょうか

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません