和風スパゲティのレシピ

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

ブックを読み取り専用で開く - ReadOnly

ブックを読み取り専用で開くにはWorkbooks.Openの引数ReadOnlyをTrueに指定します。ただし既に開いているファイルに対して実行しても、エラーにはならず、かつ読取専用にはなってくれませんのでご注意ください。

セル検索の速度比較 - Find/Match/Dictionary

セルの検索を行う手段は様々で、Range.Find、WorksheetFunction.Match、セル範囲.Formula = "=MATCH"、Dictionary(連想配列)オブジェクトなどが挙げられます。これらの速度やコーディングコストを検証してみます。

ブックを読み取り専用にする - ChangeFileAccess

開いているブックを読み取り専用にするにはWorkbookのChangeFileAccessメソッドを使用します。読取専用ブックに実行するとエラーになってしまうためReadOnlyプロパティを調べてから実行してください。

80本目:読み取り専用で保存できないブックにする

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

81本目:全フィルターの絞り込み解除

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

WorksheetのCopyメソッドを改良した関数を作る

ちょっと仕様がイマイチのCopyメソッドに、返り値がWorksheet、Before/AfterにWorkbookを渡せる(先頭/末尾にコピー)、非表示シートを渡せる、コピー後に保護を解除する機能を持たせた関数を作ってみましょう。

セル範囲から不要な範囲をカットする - Intersect

CurrentRegionやUsedRangeから上部の不要部分を消して、データエリアだけにするときなど、セル範囲から不要な範囲をカットするには、セル範囲同士の交差範囲(重複エリア)を取得するIntersectメソッドを使用します。

AutoFilerはどこから実行しても既存のフィルターが実行される

AutoFilterメソッドはどの親Rangeから実行しても、すでにフィルターが存在している場合はそのフィルターで抽出を実行してしまします。確実にフィルター範囲を指定するにはいったん解除してから実行してください。

フォルダ内のファイル一覧を取得する汎用関数

フォルダ内の複数ファイルへ同じ処理を行う場合、①まずは対象ファイルのリストを取得、②そのリスト内の全ファイルへ処理のように処理を段階化するのが便利です。この①を簡単に行うための汎用関数を紹介します。

82本目:ブックのドキュメントプロパティを取得

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

83本目:請求書を作成してPDF出力

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

84本目:ブックの自動バックアップ

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

シート上の全フィルターをクリアする - ShowAllData

テーブルとフィルターが混在したシートにおいてすべてのフィルターをクリアするには、すべてのAUtoFilterオブジェクトからShowAllDataメソッドを実行します。この処理は選択セルの影響を受けるためご注意ください。

日付から月末を求める - EOMONTH/DateSerial

日付や年月から月末を求める方法を解説します。日付から月末を求めるにはEOMONTH関数、年月の整数値から月末を求めるにはDateSerial関数のDayに0を渡す方法をそれぞれ用いるのが簡単です。

セルがエラーかどうか調べる - IsError関数

セルがエラーかどうかを調べる方法を解説します。セル.Valueに対してIsError関数を使用します。WorksheetFunctionの結果がエラーかを判定することはできませんのでご注意ください。

85本目:請求日から入金予定日を算出

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

86本目:全シートの総当たり表を作成

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

87本目:数式のシート間の依存関係

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

セルのエラー値の種類を調べる - CVErr関数

セルのエラー値の種類を調べる方法を解説します。エラーになったセル.ValueをCVErr関数の結果と比較します。エラーでないセルと比較すると型の不一致エラーが発生してしまうためご注意ください。

テーブルと通常フィルターが混在するシートにおけるAutoFilterの挙動

テーブル(ListObject)と通常のフィルター(AutoFilter)が混在したシートにおいて、AutoFilterの各種プロパティがどのような挙動になるかを検証します。特にWorksheetから直接実行するプロパティにご注意ください。

2026年 あけましておめでとうございます

明けましておめでとうございます!今年もどうぞよろしくお願いいたします!2026年はブログ連続投稿365日達成・Excel-Fun.xls* Youtubeチャンネル登録1,000名・ブログのサイト化を目標に頑張っていこうと思います。

プロシージャ分割はいつ教えるのが最適か

Sub・Functionを使って分割するテクニックは、引数や構造を理解する負担を差し引いても初学者の助けになることがあります。早くからプロシージャ分割に触れてみて、感触によってはどんどん使ってみるのもいいかもしれません。

88本目:クロスABC分析作成

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

89本目:2つのフォルダの統合

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

90本目:セルに重なっている画像の削除

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

91本目:時間計算(残業時間の月間合計)

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

LT会「みんなの便利なAI活用術」配布資料&配信アーカイブ

LT会「みんなの便利なAI活用術」の配布資料と配信アーカイブを共有します。-コーディング規約をAIに読ませてマクロを作る方法と、そのコーディング規約をAIに作ってもらう方法を発表をしましたのでご活用ください。

テーブルのフィルターをクリアする - ShowAllData

テーブルのフィルターをクリアする場合は、ListObject.AutoFilterのShowAllDataメソッドを実行します。これはフィルターの抽出状態に関わらず実行できますので、抽出がかかっていなくてもエラーにはなりません。

ユーザー定義Functionにスピル機能を持たせる

ユーザー定義関数をスピルさせるには、配列(Array)を返り値として返すだけでOKです。一次元配列であれば横方向にスピルし、n行1列の二次元配列であれば縦方向にスピルさせることができます。

92本目:セルの色を16進数で返す関数

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