和風スパゲティのレシピ

日本語でコーディングするExcelVBA

マクロでマクロを書く

汎用関数モジュールを選択ブックにコピーするマクロ

全マクロブックで共有するような自作汎用関数(ライブラリ)を、ワンタッチでアクティブブックにコピーするマクロを紹介します。Scripting Runtimeの参照もついでに実行しているため、FSOやDictionaryも即使用可能です。

Scripting Runtimeの参照を自動化するマクロ

Scripting Runtimeの設定をVBAから行う場合はVBProject.References.AddFromGuidメソッドを利用します。Scripting Runtime以外のライブラリもIDを調べれば自動化できますので流用してみてください。

コードやモジュールをVBAで操作する基本コード集

ブックに標準モジュールを挿入、ソースコードを書き替えるなど、マクロの作成や更新を自動化する際にに使用する基本コードを汎用関数としてまとめました。ご自由にお持ち帰りください。

ActiveXボタンをフォームボタンに置換するマクロ

Excel2024からActiveXコントロールが使用できなくなり、設置したマクロ(イベント)も実行できなくなります。この問題に対応するにあたり、アクティブシートの全ActiveXボタンを一括で置き換えるマクロを紹介します。

列見出しをアルファベット⇔数字で切り替える

列の見出し表示「ABC…」を、「123…」に切り替えるマクロを紹介します。Cells(R, ○)←この○に入る数字を、指折り数えなくて済むためのスイッチですね。実行型のマクロですので、個人用マクロブックなどに搭載して使ってください。

列番号のEnum定数コードを自動生成するマクロ

表形式のデータを定数で定義するとき、Enum(列挙型)定数が便利ですが、毎回書くのは面倒なので、マクロをマクロに書いてもらいましょう。見出し範囲を選択して実行すると、イミディエイトウィンドウにコードを生成して出力するマクロです。

ワークシートのオブジェクト名をマクロで設定する

ワークシートのオブジェクト名をマクロで設定する方法を紹介します。シートオブジェクト名での指定は便利なのですが、設定が面倒なので、それを「アクティブシートのオブジェクト名を、シート名と同じ名前にする」マクロでやってしまおうという魂胆です。

文字色・背景色を設定するマクロを書くマクロ

機械的に書けるコードは、マクロをマクロに書いてもらうテクニックが使えます。「セルの文字色・背景色を設定する」マクロを作るとき、①使う色のRGB値を調べる、②その値で着色するコードを書く、の2つを、セットでマクロにやってもらいましょう。