• ベストアンサー

エクセルマクロのダイヤログボックス(ツールバー)が表示されない

 エクセル2003,2000を共にパソコンにインストールをしてあり、新しいマクロの記録をしたいのですが、以前はマクロ記録開始時に表示されていた記録終了、相対参照記録用のツールバー(四角いボックス)が表示されなくなりました。  相対参照にて記録したいので表示されず困っています。  以前にマクロ記録の失敗を繰り返していて、色々、触りまくったのが原因だと思います。何故このようになったのか良く理解できません。  エクセル2003,2000もともに表示されるはずですが出て来ません。どうすれば表示できるのでしょうか? それと開いているすべてのブックにマクロを適用したいと思い、PERSONAL.XLSで保存していますが、同一の書式構成のシートで日付違いのブックに個人用マクロを実行するとエラーがでます。  この場合、その日付のシート名も記録されているからなんでしょうか?日付の如何に関わらず、マクロを実行し、自動化したいのですが、上手く行きません。  記録手順が悪い?のでしょうか?独学見よう見まねでやっているもので、基本が十分認識できてないままやっています。他のブックからセル範囲を貼り付けたりする内容なので、記録順序が狂っているかもしれません。詳しい方がおられましたらご連絡お願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • Wendy02
  • ベストアンサー率57% (3570/6232)
回答No.4

もう、この件は、解決済みですが、一応、作ってみました。 >以前はマクロ記録開始時に表示されていた記録終了、相対参照記録用のツールバー(四角いボックス)が表示されなくなりました。 '表示用プログラム Sub StopRecordVisbile() Dim StoprecBtn As Object Dim Refbtn As Object On Error Resume Next   '記録終了   Set StoprecBtn = Application.CommandBars.FindControl(, 2186)   '相対参照   Set Refbtn = Application.CommandBars.FindControl(, 896)   If Not StoprecBtn Is Nothing Then   StoprecBtn.Visible = True   Set StoprecBtn = Nothing   Else   Refbtn.Visible = True   Set Refbtn = Nothing   End If End Sub ただ、ふつうは、ツールバーの空いたところで、右クリックで、"Visual Basic" ツールバーを挿入したほうが何かと便利です。 >すべてのブックにマクロを適用したいと思い、PERSONAL.XLSで保存していますが、同一の書式構成のシートで日付違いのブックに個人用マクロを実行するとエラーがでます。 #2さんでもおっしゃっていますが、ともかく、コードを見せていただいて、ブック名の取り方、また、エラーメッセージの内容をみてからではなければ、何のコメントも出来ないと思いますね。 しょせん、記録マクロは、本当に簡単なレベルのものしか、利用できません。また、Personal.xls のマクロは、何度も試した上で、安全と分かってから、登録したほうがよいです。安易にPersonal.xls に入れることを勧めている人もいますが、なるべく少なめにしたほうがよいです。

その他の回答 (3)

  • mshr1962
  • ベストアンサー率39% (7417/18945)
回答No.3

>ツールバー(四角いボックス)が表示されなくなりました。 ツールバーなら、「表示」「ツールバー」の「記録終了」にチェックででてきませんか? この設定は「新しいマクロの記録」を実行時にしかでないので注意が必要ですが...

1960ken
質問者

お礼

 有難うございます。ご指摘いただいたツールバーのチェックボックスがONになっていませんでした。  何故出てこないのかようやく分かりました。  

回答No.2

> エクセル2003,2000もともに表示されるはずですが出て来ません。どうすれば表示できるのでしょうか? 「記録終了」ツールバーはマクロの記録中にしか表示/非表示の設定が出来ません。従いまして、設定のためにダミーのマクロ記録を開始し「記録終了」ツールバーを表示します。その後記録を終了してそのマクロは不要ですので削除してください。 > それと開いているすべてのブックにマクロを適用したいと思い   (途中の引用を省略します。すみません。) > 記録手順が悪い?のでしょうか? 実際のコードを見てみないとなんとも言えませんが、マクロ記録の限界かもしれません。 もしよろしければ、VBAを学習されてマクロを変更していただくと、今回の問題解決だけでなく、色々な可能性が広がっていくと思うのですが・・・ (回答になっていなくてすみません。)

1960ken
質問者

お礼

 ご返答有難うございました。回答いただいた通りにしたらその通りになりました。  最近、マクロをやりかけたばかりで細かいことが分かりません。  本当はもっと自動化して操作を簡単にしたいことが山ほどありますが、悲しいかな、そこまでのレベルがないです。  VBAを勉強したいのですが、複雑で色んなコードがあり、よく理解できません。  もっとこの自動化機能をマイクロソフトがより分かりやすくエクセルを改善してくれることを期待しています。すみませんでした。

回答No.1

記録を開始してから、ツールバー上で右クリックして[記録終了]をクリックすると表示できます。 また、ここで表示しておけば次回から自動で表示できます。

1960ken
質問者

お礼

 ご連絡有難うございます。右クリックでそういう操作があるのが知りませんでした。次回から取り入れたい思います。感謝申し上げます。

関連するQ&A