マクロを有効化するとコマンドボタンのオブジェクト名が勝手に変更される

使用環境

 OS:Windows7 Enterprise 64bit
 ソフト:Office2010

質問内容

メール添付等で受領したコマンドボタンで動作するマクロが埋め込まれているファイルを開き、

"セキュリティの警告"に表示される"コンテンツの有効化"ボタンを押下すると、

ボタンに付与していたオブジェクト名が、デフォルトのCommandButton1等に書き換えられ、

"'xxxx'コントロールは作成されていないため、デザインモードを終了できません"(xxxx:本来付与していたオブジェクト名)

というポップアップが表示されてしまいます。

しかし、数式バーの名前ボックスには、本来のxxxxが表示されています。

デザインモードでボタンのプロパティより、オブジェクト名を本来のxxxxに書き換えてみたところ、

"名前が適切ではありません:xxxx"

というポップアップが表示され、戻すこともできません。

以上のような状況となり、ボタン押下によるマクロ動作を正常に行うことができません。

改善方法、確認すべき事項等ありましたらご指摘いただけると幸いです。

よろしくお願いいたします。

回答
回答

大沢様

返信ありがとうございます。

ご提示いただいたexdファイルの削除は、今回の問題が発生する前に既に実施していました。

完全な解決では無いですが、今回質問した問題の解消方法が分かったので報告します。

今回の問題を色々と検証していたところ、既存のオブジェクト(ボタン)をデザインモードで

削除(delete押下)しようとすると、Excelアプリケーションが落ちてしまう下記の問題が発生し、

[問題の詳細]

問題の署名:
  問題イベント名: APPCRASH
  アプリケーション名: EXCEL.EXE
  アプリケーションのバージョン: 14.0.7140.5000
  アプリケーションのタイムスタンプ: 5462a671
  障害モジュールの名前: VBE7.DLL
  障害モジュールのバージョン: 7.0.16.28
  障害モジュールのタイムスタンプ: 506f83c8
  例外コード: c0000005
  例外オフセット: 002092a5
  OS バージョン: 6.1.7601.2.1.0.256.48
  ロケール ID: 1041

問題のあるモジュールVBE7.dllに関して調査し、行き着いた下記URLに記載されていた

Method1を実行してみたところ、今回の問題が解消しました。

http://blogs.technet.com/b/the_microsoft_excel_support_team_blog/archive/2012/09/07/excel-crashes-in-vbe7-dll-running-or-enabling-macro.aspx

[実施した手順]

0.動かないExcelを開く 

1.コンテンツ有効化ボタンを押下せずにVBエディタ起動(開発タブ→Visual Basic)
2.デバッグ→VBAProjectのコンパイル
3.保存してExcelを終了
4.再度開き、動作確認

ただ、解消方法は分かったのですがそもそもなぜ今回の問題が

発生するのか、という原因は不明のため、何か知見をお持ちでしたら

ご教示いただけないでしょうか。

以上、よろしくお願いいたします。

この回答は 26 人の役に立ちました

·

この回答で問題は解決しましたか?

役に立ちませんでした。

回答としてマークしていただきありがとうございます。

この返信の満足度をお教えください。

フィードバックをお送りいただきありがとうございます。今後のサイト改善に役立てて参ります。

この回答の満足度をお教えください。

フィードバックをお送りいただきありがとうございます。

 
 

質問情報


最終更新日 2020年6月24日 表示 18,516 適用先: