Windows3.1 時代に使用していた Excel5.0 では、マクロをメニューの「ツール」の下に登録する事が出来たのですが、
Excel97 ではメニューへの登録がありません。(ツールバ-への登録はありますが。)
Excel5.0 で作成したファイルを Excel97 で開いたら、「ツール」メニュー中に登録したマクロメニューが存在しますので
登録できないと言う事はないと思われます。
登録方法を教えて下さい。
このため Excel5.0 を捨てられずに困っております。

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

A 回答 (5件)

こんにちは



 以下のページがご参考になるのでは?

【エクセル技道場】-ツールバー
http://www2.odn.ne.jp/excel/waza/toolbar.html

参考URL:http://www2.odn.ne.jp/excel/
    • good
    • 0
この回答へのお礼

どうもありがとうございました。
この URL より、http://www.microsoft.com/japan/support/kb/articl …
を発見、そこに「ワークブックごとにメニューバーを保存する事が出来なくなりました。」の記述があることを確認しました。
結局、旧バージョンの Excel ファイルである場合のみ可能なんですね。
もっと簡単に設定できるのかと思っていました。
ありがとうございました。

お礼日時:2001/02/05 14:24

さてと・・・ブック毎にメニュー設定を変える方法ですが、手元にあるのがOffice2000ですから、違うところがあるかもしれませんが、違うところは、他の方のフォローをお願いするとして・・・



ThisWorkbookのコードに下記を記述します。

'ワークブックを閉じる時の処理
Private Sub Workbook_BeforeClose(Cancel As Boolean)
  Call MenuDelete
End Sub

'ワークブックが開いたときの処理
Private Sub Workbook_Open()
  Call MenuSet
End Sub

Excel97以前だとAuto_OpenとAuto_Closeだったかもしれません。

標準モジュールを追加して下記を記述します。

Option Explicit

Private mnuControl As CommandBarControl

Public Sub DaySet()
  On Error Resume Next
  ActiveCell.Value = Format(Now, "yyyy/mm/dd")
End Sub


Public Sub MenuSet()
  On Error GoTo MenuSet_Err
  Set mnuControl = CommandBars("Tools").Controls.Add(Type:=msoControlButton, temporary:=True)
  mnuControl.Caption = "今日の設定(&T)"
  mnuControl.OnAction = "DaySet"
  Exit Sub
MenuSet_Err:
  Exit Sub
End Sub

Public Sub MenuDelete()
  On Error Resume Next
  mnuControl.Delete
End Sub

やっていることは、

・ワークブックが開いたときにツールメニューの最後に「今日の設定(T)」というメニューを追加して、そのメニューのマクロをDaySetにしている。

・ワークブックが閉じるときにメニューを削除する。

というものです。
クラスモジュールにして、オブジェクトが壊れるときに、メニューを削除するようにしたほうがいいかもしれません。

Excel97とオブジェクトが違って動かない場合はご勘弁ください。

(プログラム中で、見やすくするために左側のスペースを全角スペースにしています。ご注意ください)
    • good
    • 0

>そうそう、「追加されたユーザー設定メニュー」を右クリックしてもプロパティ画面が開きません。


>マクロの登録は左クリックで登録画面が開きました。しかし名称変更は出来ませんでした

ユーザー設定ダイアログを閉じてから右クリックしたのでは、開いたままで、右クリックしてください。

あとから、削除する場合も、1で、ユーザー設定のダイアログを開いた状態で、削除したいメニューを右クリックして、削除です。
    • good
    • 0

1.Excelのメニューで[表示]-[ツールバー]-[ユーザー設定...]と開いてください。



2.ダイアログのコマンドタグを選択してください。

3.ダイアログの左にある「分類」の中の「マクロ」を選択してください。

4.ダイアログの右にある「コマンド」の「ユーザー設定メニュー」をメニューバーのメニューを追加したい位置にドラッグドロップしてください。

5.追加された「ユーザー設定メニュー」を右クリックして名前の変更やマクロの登録を行ってください。

あとは、メニューバーのユーザー設定のダイアログを閉じれば、新しいメニューが使えます。

この回答への補足

どうもありがとうございます。
この方法で試してみましたが、大きな欠点が2つ。
1つは、この方式で登録するとそのメニュー項目が常駐してしまいます。
私が望んでいるのは、マクロを含む Book を開いた時に、そこに登録されているマクロがメニューに現れるという物。
閉じても残っては困ります。

もう一つ、この方法ではまずいと思い、追加した「ユーザー設定メニュー項目」を消したいのですが消し方がわかりません。^^;;
これは「ヘルプ」から調べられるかな。

そうそう、「追加されたユーザー設定メニュー」を右クリックしてもプロパティ画面が開きません。
マクロの登録は左クリックで登録画面が開きました。しかし名称変更は出来ませんでした。

補足日時:2001/01/10 19:06
    • good
    • 0

「ユーザー設定」で、


「コマンド」の分類から『マクロ』を選択、コマンドの『ユーザー設定メニュー項目』をドラッグして、メニューバーの「ツール」へ持っていきます。プルダウンが開いたら好きな場所におきます。
そのまま、「選択したボタンの編集」を押すと、名前を変更できます。

「ツール」の今設定したメニューを開くと、
『マクロの登録』になります。登録したいマクロを選択します。

次回からそのメニューを選べば、マクロが実行されます。
    • good
    • 0

このQ&Aに関連する人気のQ&A

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

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

QExcel97でメニューバーとツールバーが出てこない

表題のとおり、エクセルを立ち上げると、メニューバーもツールバーも
表示されず、ワークシートが一面に表示された状態に
なってしまってます。
右クリックとか色々してみたのですが出てきてくれません・・・
どうしたらメニューバーを復活できるでしょうか?? 

Aベストアンサー

下記サイトを参考にどうぞ。

メニューバーが表示されない

参考URL:http://www.geocities.co.jp/Technopolis/2082/Soft/Soft.html

Qエクセル97,マクロのツールバー登録について

状況
例えば,test1.xlsというエクセルブックを開いて,vba機能によりマクロを作成します。これを,保存先をtest1.xlsにしてツールバーのアイコンに登録します。
作業が終わって,test1.xlsをok.xlsという名称に変えて保存・終了し,新しいbook1.xlsを立ち上げるとします。
すると,test1.xlsに登録したはずのツールバーアイコンのマクロ登録先が,ok.xlsに変わっています。

質問
例えばok.xlsにブック名を変更して保存・終了しても,ツールバーのアイコンのマクロの保存先をtest1.xlsにするには,どこをどの様に設定したら良いのでしょうか?

素人なものですから,具体的に方法を記述していただけると,非常に助かります。

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

Aベストアンサー

普通は、名前を変えて保存したら、ちゃんと追随してリンクが変わった方が便利なのですから、ご希望の事はできないのでは?

同じアイコンが、開くブックによって変わると言うことがしたいのであれば、各ブックが開くときに、アイコンのリンク先を変更するようにしておけばいいのではないですか?

QExcel2002・マクロ ツールバー、メニューバーの追加・変更方法

Excel2002において、自分で作成したマクロを実行させるツールバー、メニューバーを追加したいのですが、
どのようにすれば、追加や変更ができるのでしょうか?

Excel Ver7.0の時に作成したマクロをExcel 2002で読み込んだのですが、ツールバー・メニューバーはちゃんと表示されているのに、VisualBasic Editorを開いてみると標準モジュール、クラスモジュールのどこにも、このコード記述が見あたりません。

Ver7.0の時は、ツールバー、メニューバーを表示させるコードを直接モジュールシートに記述しており、参照できるようになっていました。
Excel 2002では、コード記述ではなく、どこか別の所、プロパティウィンドウなどで設定するのですか?

どうすれば、ツールバー・メニューバーの追加や変更が可能になるのでしょうか?

どなたか、ご回答をよろしくお願いします。






5年のブランクがあり、新しいバージョンの仕様が
変わっているので、戸惑っています。
どなたか助けてください!
よろしくお願いします。

Excel2002において、自分で作成したマクロを実行させるツールバー、メニューバーを追加したいのですが、
どのようにすれば、追加や変更ができるのでしょうか?

Excel Ver7.0の時に作成したマクロをExcel 2002で読み込んだのですが、ツールバー・メニューバーはちゃんと表示されているのに、VisualBasic Editorを開いてみると標準モジュール、クラスモジュールのどこにも、このコード記述が見あたりません。

Ver7.0の時は、ツールバー、メニューバーを表示させるコードを直接モジュールシートに記述しており...続きを読む

Aベストアンサー

#7です、なかなか難しそうですね。

そういう場合、VBEのオブジェクトブラウザで、Auto_Openを検索するとどうなるのでしょうか。

僕は開くブックによらずメニューバーに、コントロールの"操作支援ツール"が作られてしまうのかと思っていましたが、

> そのブックをまた開くと、自分で作成したツールバーがヘルプの右横に表示されてしまいます。

ということで、問題はひとつのブックに限定されている様なので、どうしても見つからなかったら、この際新しいブックに必要なコードをコピーしてそちらをご使用になることをお勧めします。
その場合、コントロールを作るコードは、Auto_Openよりも、ThisWorkbook の Workbook_Open イベントを利用したほうがいいように思います。

なんだか投げやりな回答ですみません。m(__)m

> あと、「バーとボタンの混同」というのは、どの部分でしょうか?

ご質問文等を拝見していてちょっと分かりにくかったのは、タイプが msoControlPopup のコマンドバーコントロールを、随所でメニューバーと書かれているところです。#1のコードで作られるのはコントロールで、コマンドバーではないですよね。

もちろんcateyeさんは、違いをよく分かっていらっしゃると思います。文章にするのは難しいですよね、僕もコントロールをボタンと書いてしまっているし・・・。

#7です、なかなか難しそうですね。

そういう場合、VBEのオブジェクトブラウザで、Auto_Openを検索するとどうなるのでしょうか。

僕は開くブックによらずメニューバーに、コントロールの"操作支援ツール"が作られてしまうのかと思っていましたが、

> そのブックをまた開くと、自分で作成したツールバーがヘルプの右横に表示されてしまいます。

ということで、問題はひとつのブックに限定されている様なので、どうしても見つからなかったら、この際新しいブックに必要なコードをコピーしてそちら...続きを読む

QEXCEL 添付したツールバーに登録したマクロのパスについて

Excel2003を使っています。

「表示メニュー」-「ツールバー」-「ユーザー設定」より新しいツールバーを作成しました。マクロのボタンが1つ作ってあり、同じファイル内のマクロが登録してあります。

このファイルをCドライブのマイドキュメントに保存しました。
この後、このファイルをDドライブに移動してみると、マクロのボタンが正しく動作しません。調べてみると、登録したマクロのパスがCドライブのままになっています。

ツールバーのボタンは常に同じファイル内の syori_1 を実行するようにしたいのですが、どのようにしたら良いのでしょうか?

どうぞご教授ください。

Aベストアンサー

ThisWorkbook に
Private Sub Workbook_Open()
Application.CommandBars("ツールバー名").Controls("ボタン名").OnAction = "syori_1"
End Sub

で出来ます。

QExcel97で作成したマクロをExcel2000で使えず・・・

よ~く探せば同内容の質問が過去にあるかもしれないのですが、多すぎて探せなかったので、質問します。すいませんが宜しくお願いします。
会社のPC(OSはWin95)のエクセル97でマクロを作成して、共有データエリアに保存し、別のPC(OSはWin98)のエクセル2000で実行しようとしたら、***はマクロを含んでいますとメッセージが出て、マクロを有効にすると、オブジェクトライブラリは登録されていませんというメッセージが出てきたので、OKにし、もう一度マクロを有効にしたら、「***の修復   ***にエラーが検出されましたがMicrosoftExcelは次の修復を行うことによってファイルを開くことができました。修復を保持するにはこのファイルを保存してください。  VisualBasicプロジェクトが失われました。 ActiveXコントロールが失われました。」というエラーメッセージが出てきて、マクロがなくなってしまい、また新しくマクロを記録しようとしても、記録できません、というエラーメッセージが出てきてマクロが作れなくなってしまいました。
尚、セキュリティは中にしてありますが、低でもマクロの記録ができないです。なぜでしょう?

よ~く探せば同内容の質問が過去にあるかもしれないのですが、多すぎて探せなかったので、質問します。すいませんが宜しくお願いします。
会社のPC(OSはWin95)のエクセル97でマクロを作成して、共有データエリアに保存し、別のPC(OSはWin98)のエクセル2000で実行しようとしたら、***はマクロを含んでいますとメッセージが出て、マクロを有効にすると、オブジェクトライブラリは登録されていませんというメッセージが出てきたので、OKにし、もう一度マクロを有効にしたら、「***の修復   ***にエラーが検出...続きを読む

Aベストアンサー

メッセージから察するに、VBAプロジェクトのライブラリファイル参照がうまくいっていないか、ファイル自体が壊れているかもしれません。VBエディタが開ける状態であれば、[ツール]>[参照設定]で調べてみてください。”参照不可”があったり、"VisualBasic For Applications"と、"MicrosoftExcel9.0 Object Library"にチェックが無い状態ではマクロ機能は使えません。
EXCEL2000のメニューで、[ヘルプ]>[アプリケーションの自動修復]は試みましたか?。


このカテゴリの人気Q&Aランキング

おすすめ情報