和風スパゲティのレシピ

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

2026-02-01から1ヶ月間の記事一覧

3/1(日)21:00~【AI×VBA】和風スパゲティAIを作ってみよう!

Excel-Fun.xls*の毎日信金さんが、3/1(日)21:00~「【AI×VBA】和風スパゲティAIを作ってみよう!」というイベントを開催します!本ブログをAIに読み込ませ、私の分身AIを作ってくださるとのことで、ぜひともご視聴ください!

シートがアクティブになった時にマクロを自動実行する - Worksheet_Activate

特定のシートがアクティブになった時にマクロを自動実行する方法を解説します。シートモジュールの「Worksheet_Activate」を使う方法と、Thisworkbookの「Workbook_SheetActivate」を使う方法があります。

ブックの保存時にマクロを自動実行する - BeforeSave

ブックの保存時にマクロを自動実行する方法を解説します。保存の直前に実行したい場合はBeforeSaveイベント、保存の直後に実行したい場合はAfterSaveイベントを使用します。

Application.GoToとRange.Selectの違い

Application.GoToメソッドと、RangeオブジェクトのSelectメソッドの違いを解説します。どちらも選択セルを変更する機能ですが、GoToの方が別シートのセルを選択できるなど高機能で、しかし不安定という違いがあります。

Range.Selectと.Activateの違い

Rangeオブジェクトのメソッドである、SelectメソッドとActivateメソッドの違いを解説します。どちらも選択セルを変更するメソッドですが、Activateメソッドは「選択範囲内のアクティブセルを変更する」機能を持ちます。

LT会「ガジェット紹介」配布資料&配信アーカイブ

2026年2月23日(月)21:00~ 「みんなの便利なAI活用術」に登壇いたしました!ご参加いただいた皆さまありがとうございました(´∀`) 今回はライトニングトーク会ということで7名の方からの発表でした!今回の勉強会はYoutubeLiveでも配信をしており、 Live配信…

72本目:ITをDXに変換(文字列操作)

Excel&VBA解説サイト「エクセルの神髄」様出題の問題集、「VBA100本ノック」に対する私の回答と解説のページです。

73本目:新規ブックにボタン作成しマクロ登録

Excel&VBA解説サイト「エクセルの神髄」様出題の問題集、「VBA100本ノック」に対する私の回答と解説のページです。

Workbook_BeforeCloseとAuto_Closeの違い

Workbook_BeforeCloseとAuto_Closeの違いを解説します。どちらもブックを閉じる直前にマクロを自動実行する仕組みですが、閉じるのを中止する機能を有するbeforecloseが上位互換のためこちらを使いましょう。

Workbook_OpenとAuto_Openの違い

Workbook_OpenとAuto_Openの違いを解説します。どちらもブックを開いた際にマクロを自動実行する仕組みですが、機能面に差はないため、基本はThisWorkbookに書けて管理しやすいWorkbook_Openを使っておきましょう。

ブックを閉じるときにマクロを自動実行する - BeforeClose

ブックを閉じる際にマクロを自動で実行するにはBeforeCloseイベントを使用します。引数CancelにTrueを渡すと、ブックを閉じるのを中止できます。イベントを実行せずにブックを閉じるにはEnableEventsをFalseにします。

すべてのシートの保護を一括で設定/解除する

すべてのシートの保護を一括で設定/解除するには、ForEachでループしたすべてのシートでProtect/Unprotectメソッドを実行します。Protectについては許可する操作をひとつずつ選ぶ必要があるためご注意ください。

ブックを開いたときにマクロを自動実行する - Workbook_Open

ブックを開いたときにマクロを自動実行するにはWorkbook_Openイベントを利用します。ただし実際には「マクロを有効化」した際に実行されるため、本当に開いた直後に実行させるにはいくつかの工夫が必要になります。

74本目:1シート複数表をDB形式に変換

Excel&VBA解説サイト「エクセルの神髄」様出題の問題集、「VBA100本ノック」に対する私の回答と解説のページです。

75本目:ログインフォームの作成

Excel&VBA解説サイト「エクセルの神髄」様出題の問題集、「VBA100本ノック」に対する私の回答と解説のページです。

ユーザー定義関数が呼ばれたセルを取得する - Caller

ユーザー定義関数(Function)が呼ばれたセルを取得するには、Application.Callerプロパティを使用します。入力セルによって処理を分岐させたい場合はこのプロパティを使用してください。

押されたボタンごとに処理を分岐する - Caller

押されたボタンごとに処理を分岐するにはApplication.Callerプロパティを使用します。Application.Callerで取得したオブジェクト名からShapeオブジェクトを取得すれば、表示テキストや位置による分岐も可能です。

76本目:ボタンの表示名の位置へ移動

Excel&VBA解説サイト「エクセルの神髄」様出題の問題集、「VBA100本ノック」に対する私の回答と解説のページです。

「クラスモジュール超入門」配布資料&配信アーカイブ

第10回 和風スパゲティ勉強会「クラスモジュール超入門」の配布資料と配信アーカイブを共有します。クラスモジュールの使い方を基礎から解説しましたので、復習や見逃し配信にご活用ください。

マクロの実行元(実行ボタン)を取得する - Caller

マクロがどこから実行されたかを調べるにはApplication.Callerプロパティを使用します。押されたボタンの名称を調べることができるだけでなく、ユーザー定義関数として呼ばれた際にその入力セルを取得することもできます。

77本目:シート挿入イベント

Excel&VBA解説サイト「エクセルの神髄」様出題の問題集、「VBA100本ノック」に対する私の回答と解説のページです。

78本目:グラフのデータ範囲拡張

Excel&VBA解説サイト「エクセルの神髄」様出題の問題集、「VBA100本ノック」に対する私の回答と解説のページです。

処理前後のDisplayAlertsのONOFFを関数化する

Application.DisplayAlerts = False ⇒ 削除したいシート.Delete ⇒ Application.DisplayAlerts = True のようなコードはたったこれだけの処理に3行も使うため、こういったコードは思い切って汎用関数にしてしまいましょう。

79本目:Wordにセル範囲を図として挿入

Excel&VBA解説サイト「エクセルの神髄」様出題の問題集、「VBA100本ノック」に対する私の回答と解説のページです。

選択セル範囲のパスからフォルダを一括作成するマクロ

選択セル範囲にあるフォルダパスからフォルダを一括作成するマクロを紹介します。日付をTEXTJOIN関数で繋げてフォルダパスを生成するなど、規則性のあるフォルダを一括生成する際にご活用ください。

今年の恵方を調べる関数

ある年の恵方がどの方角かを調べる関数を紹介します。恵方は実は4種類しかなく、しかも周期が10になっているため、西暦年の下1桁「Right(年,1)」を判定するだけで求めることが出来ます。

フォルダの構成をシートに書き出すマクロ

フォルダの構成をシートに書き出すマクロを紹介します。ダイアログで選択したフォルダの構成を新規シートに出力します。実行型の便利マクロですので、「個人用マクロブック」などに搭載して使ってください。

ExcelVBAで学ぶオブジェクト指向

ExcelVBAはオブジェクト指向言語ではありませんが、WorksheetやRangeなどのオブジェクトはとても優れた設計になっています。今回はこれら組込オブジェクトの設計からオブジェクト指向を学んでみましょう。