C# と VB.NET の質問掲示板
ASP.NET、C++/CLI、Java 何でもどうぞ
C# と VB.NET の入門サイト
リボン登録について
掲示板トップ
C# と VB.NET 入門
新規作成
利用方法/規約
ツリー表示
トピック表示
ランキング
記事検索
過去ログ
[トピック内 4 記事 (1 - 4 表示)] <<
0
>>
■103720
/ inTopicNo.1)
リボン登録について
▼
■
□投稿者/ アンジッシュウ
(1回)-(2025/06/03(Tue) 08:43:19)
分類:[.NET 全般]
windows11pro
Excel2016
VBAマクロ
上記環境下において
エクセルのリボンに、マクロを使って
マクロを登録する方法はあるのでしょうか?
通常hあ
[表示][マクロ][マクロ名選択][実行]で行うのですが
マクロが多くなり、目的の探すのが厄介です。
通常使うものは少ないのでそれをリボンに登録
したいのですが、リボン登録ができないという人がいます。
それはそれで問題なのですが、
そこで、必ず使うマクロに関しては一度マクロを実行し、
リボンに登録していなければマクロ内で
リボンに登録するようにするということや、
マクロのリボンインストールなどのマクロは可能なのでしょうか?
引用返信
編集キー/
編集
■103721
/ inTopicNo.2)
Re[1]: リボン登録について
▲
▼
■
□投稿者/ kiku
(474回)-(2025/06/03(Tue) 10:13:34)
2025/06/03(Tue) 10:16:16 編集(投稿者)
2025/06/03(Tue) 10:15:56 編集(投稿者)
<pre><pre>■
No103720
(アンジッシュウ さん) に返信
> windows11pro
> Excel2016
> VBAマクロ
> 上記環境下において
>
> エクセルのリボンに、マクロを使って
> マクロを登録する方法はあるのでしょうか?
・マクロからマクロを登録する方法は見つけられませんでした。
多分できないと思います。
・確認していませんが、アドインからできるかもしれません。
・マクロの名前を変えることで、優先順位の高いマクロを
一番上に持っていくという運用が一番簡単かも。
マクロの名前
macro1
macro2
macro3
●macro1
表示順
●macro1
macro1
macro2
macro3
引用返信
編集キー/
編集
■103722
/ inTopicNo.3)
Re[2]: リボン登録について
▲
▼
■
□投稿者/ アンジッシュウ
(2回)-(2025/06/03(Tue) 10:41:11)
■
No103721
(kiku さん) に返信
ありがとうございます。
やはり、無理なようですね。
ネットでも色々調べましたが見つかりませんでした。
解決済み
引用返信
編集キー/
編集
■103723
/ inTopicNo.4)
Re[1]: リボン登録について
▲
▼
■
□投稿者/ 魔界の仮面弁士
(3852回)-(2025/06/03(Tue) 11:54:59)
書いている間に終わってしまったようなので(汗)、解決済みチェックはつけたままにしておきます。
■
No103720
(アンジッシュウ さん) に返信
> エクセルのリボンに、マクロを使って
> マクロを登録する方法はあるのでしょうか?
リボンのカスタマイズは、XML による定義が必要です。
https://learn.microsoft.com/ja-jp/office/vba/library-reference/concepts/customize-the-office-fluent-ribbon-by-using-an-open-xml-formats-file
XML の仕様はこちら。
https://learn.microsoft.com/en-us/openspecs/office_standards/ms-customui/31f152d6-2a5d-4b50-a867-9dbc6d01aa43
手動で追加・変更したリボンやクイック アクセス ツールバーの場合は、
%LocalAppData%\Microsoft\Office\
の下の Excel.officeUI (または Excel*.officeUI) に保持されます。
中身は XML ファイルなので、メモ帳等で確認できるかと。
ファイル名は環境によって異なり、
Excel 2007 ⇒ Excel.officeUI
Excel 2010 ⇒ Excel14.officeUI
Excel 2013 ⇒ Excel15.officeUI
Excel 2016 ⇒ Excel16.officeUI
Excel 365 ⇒ Excel.officeUI または Excel16.officeUI
などとなるそうです。Click-to-Run(C2R)版 ではバージョン指定のない Excel.officeUI が使われる傾向があるようで、
手元の Excel 2016 MSO も C2R 版なので、"Excel.officeUI" というファイル名で生成されていました。
あるいは、アドイン(.xlam)にリボン XML を埋め込むパターンもあります。
.xlam ファイルは ZIP 構造なので、/customUI/customUI.xml (または /customUI/customUI14.xml) に埋め込みます。
customUI フォルダは自動的に認識されるため、.rels ファイルによる関連付けは不要です。
(リボン XML が画像などのリソースを参照する場合は、customUI/_rels/customUI.xml.rels も作成します)
本題となる、クリック時に呼び出されるマクロの割り当てについては、
<mso:button idQ="…" label="SampleButton1" imageMso="…" onAction="E:\Book1.xlsm!SampleMethod" visible="true"/>
のように、絶対パス指定で割り当てる方法もありますが、推奨されるのは、
onAction="MyMacro"
のように「アドイン内のマクロ名のみ」を割り当てる方法です。あるいは、
onAction="ThisWorkbook.MyMacro"
とすれば、「現在開いているブック内のマクロを参照」させることも可能です。(ブックが開かれていないと動作しません)
なお、
onAction="..\MyMacro.xlsm!MyMacro"
のような相対パス指定や、環境変数を含めたパスなどはサポートされていなかったはずです。
解決済み
引用返信
編集キー/
編集
このトピックをツリーで一括表示
トピック内ページ移動 / <<
0
>>
このトピックに書きこむ
入力内容にタグは利用できません。
他人を中傷する記事は管理者の判断で予告無く削除されます。
半角カナは使用しないでください。文字化けの原因になります。
名前、コメントは必須記入項目です。記入漏れはエラーになります。
入力内容の一部は、次回投稿時の手間を省くためブラウザに記録されます。
URL は自動的にリンクされます。
記事中に No*** のように書くとその記事にリンクされます(No は半角英字/*** は半角数字)。
名前
(*必須)
E-Mail (任意)
Web サイト (任意)
投稿モード
通常モード
図表モード (ソースコードを貼る場合はこちらを使用)
本文
(質問の場合は、開発環境・使用言語のバージョンなどを最初に書いてください)
■No103722 (アンジッシュウ さん) に返信 > ■No103721 (kiku さん) に返信 > > ありがとうございます。 > やはり、無理なようですね。 > ネットでも色々調べましたが見つかりませんでした。
編集キー
自分の投稿を編集する時に必要です
(半角8文字以内)
解決済み
/
解決したらチェックしておきましょう。
プレビュー/
管理者用
-
Child Tree
-