書籍概要

レシピ集

改訂新版 Excel VBAコードレシピ集

著者
発売日
更新日

概要

業務改善に役立つ最新・定番の"レシピ"がたっぷり! 大幅に内容を改訂しました。

セルの選択,値の操作といった初歩的なテクニックから集計,分析,作表など定番のテクニックは完全フォロー。ファイル操作,テーブル,Officeアプリ連携だけでなく,PowerQueryのような新定番化した機能まで目的別にレシピを収集。構文やコードは簡潔に整理し圧倒的なボリュームでまとめました。業務で使い始めたばかりの方から,開発で使いたいプログラマーの方まで,Excel VBAを扱うすべての方にお届け。Excel 2024/2021/2019/Microsoft 365対応。

こんな方におすすめ

  • Excel VBAの初~中級者。Excel VBAの基礎を理解し,これから実際に使いこなそうとしている方
  • VBAプログラマの方

サンプル

samplesamplesamplesamplesample

目次

Chapter 1 セル選択のテクニック

  • 001 セル番地や行・列番号でセルを取得したい
  • 002 任意のセル範囲内から目的のセルを取得したい
  • 003 セルが選択されているときだけアドレスを取得したい
  • 004 セルが選択されていないときもアドレスを取得したい
  • 005 使用されているセル範囲を取得したい
  • 006 表内の先頭と終端のセルを取得したい
  • 007 数式が入力されているセル範囲だけを操作したい
  • 008 数値が入力されているセル範囲だけを操作したい
  • 009 文字列が入力されているセル範囲だけを操作したい
  • 010 基準セルを含む行全体を操作したい
  • 011 基準セルを含む列全体を操作したい
  • 012 空白セルだけを操作したい
  • 013 空白セルを含む行全体を一括操作したい
  • 014 結合セルかどうかや結合範囲を取得したい
  • 015 2つ以上のセル範囲の集合を取得したい
  • 016 2つのセル範囲の重なり合う範囲を取得したい
  • 017 離れた位置にあるセルを固まりごとに操作したい
  • 018 セルを検索して見つかったセルを操作したい
  • 019 セルを検索して対象セルすべてを操作したい
  • 020 「1行分」単位でセルを操作したい
  • 021 グラフや図がどのセル上に置かれているかを知りたい
  • 022 表示されているセル範囲だけを操作したい
  • 023 非表示の行・列があるかどうかをチェックしたい
  • 024 画面に表示されているセル範囲を知りたい
  • 025 シートの表示エリアを制限したい
  • 026 指定セルが画面左上に来るようにスクロールさせたい
  • 027 アクティブではないシート上のセルへ移動したい
  • 028 他のセルへジャンプ後に元のセルへと戻りたい

Chapter 2 セルの値と表示に関するテクニック

  • 029 セルに値を入力したい
  • 030 セルが空白かどうかを判定したい
  • 031 セルの値が数値かどうかを判定したい
  • 032 セルの値が日付かどうかを判定したい
  • 033 セルの値が文字列かどうかを判定したい
  • 034 セルに相対参照で数式を入力したい
  • 035 セルに配列数式を入力したい
  • 036 セルにスピル形式で数式を入力したい
  • 037 セルに数式が入力してあるかどうかを判定したい
  • 038 セルの数式がエラーかどうかを判定したい
  • 039 セルの数式が参照しているセル範囲を取得したい
  • 040 セルのシリアル値を取得したい
  • 041 日付に変換させずに文字列として入力したい
  • 042 日付を年・月・日 それぞれの値から作成したい
  • 043 時刻を時・分・秒 それぞれの値から作成したい
  • 044 VBE上で直接日付値を入力したい
  • 045 日付から年月日や時分秒の値を取り出したい
  • 046 月の最終日を取得したい❶
  • 047 月の最終日を取得したい❷
  • 048 10日後や3か月後の日付を計算したい
  • 049 日付に指定書式を適用した文字列を取得したい
  • 050 稼働日数を取得したい
  • 051 指定日が休日かどうかを判定したい
  • 052 「メモ」と「コメント」を使い分けたい
  • 053 セルにメモを追加したい
  • 054 メモの内容を更新したい
  • 055 メモを削除したい
  • 056 メモ内の文字列を一括検索したい
  • 057 セルにコメントを追加したい
  • 058 コメントに返信したい
  • 059 コメントの内容を更新したい
  • 060 コメントを削除したい
  • 061 すべてのコメントを「解決」にしたい
  • 062 セルのフリガナを取得したい
  • 063 セルのフリガナ設定を変更したい
  • 064 任意の文字列のフリガナを自動判別したい
  • 065 漢字ごとの個別のフリガナを取得したい
  • 066 フリガナを一括消去したい

Chapter 3 データの入力で役立つテクニック

  • 067 規則を満たす値しか入力できないようにしたい
  • 068 入力規則の内容をポップアップで知らせたい
  • 069 規則外の値の入力時に警告メッセージを表示したい
  • 070 セルに入力規則が設定されているかを知りたい
  • 071 入力規則が設定されているセルをすべて取得したい
  • 072 入力規則の対応形式を再設定したい
  • 073 入力規則に反したデータ数と位置を取得したい❶
  • 074 入力規則に反したデータ数と位置を取得したい❷
  • 075 値を入力できるセルを制限して数式を保護したい
  • 076 同じ色のセルを対象にシートの保護を切り替えたい
  • 077 セルにハイパーリンクを挿入したい
  • 078 セルに他ブックへのハイパーリンクを挿入したい
  • 079 ハイパーリンクのポップヒントを変更したい
  • 080 すべてのハイパーリンクのリンク先をまとめて開きたい
  • 081 すべてのハイパーリンクを削除したい
  • 082 ハイパーリンク設定を解除したい
  • 083 数式の結果でなく数式そのものを検索したい
  • 084 特定の書式を持つセルを検索したい
  • 085 色の付いているセルすべてを取得したい
  • 086 特定の値を含むセルに色を付けたい
  • 087 セルに特定の単語が含まれている個数を取得したい
  • 088 MATCH関数で完全に一致するデータを検索したい
  • 089 MATCH関数でヒストグラムのように特定範囲内の値を検索したい
  • 090 VLOOKUP関数で目的のデータを表引きしたい
  • 091 XLOOKUP関数で目的のデータを表引きしたい
  • 092 UNIQUE関数でユニークなリストを作成したい
  • 093 セルがスピル範囲かどうかを取得したい
  • 094 スピル形式の数式の結果セル範囲を取得したい

Chapter 4 表形式でデータを扱うテクニック

  • 095 表形式のセル範囲をテーブルに変換したい
  • 096 テーブルの名前やスタイル書式を設定したい
  • 097 テーブル設定を解除したい
  • 098 テーブル全体のセル範囲を取得したい
  • 099 テーブルの見出しとデータ範囲を分けて選択したい
  • 100 テーブルで扱うセル範囲を更新したい
  • 101 テーブルに「次のレコード」を追加したい
  • 102 テーブルのデータをレコード単位で扱いたい
  • 103 テーブルのレコード数を知りたい
  • 104 テーブルのデータをフィールド単位で扱いたい
  • 105 テーブルのスライサーを設定/消去したい
  • 106 テーブルを構造化参照式で計算したい
  • 107 テーブルを構造化参照式で参照したい
  • 108 テーブルから「現在の位置を元にしたレコード」を取得したい
  • 109 テーブルを操作するときの注意点❶
  • 110 テーブルを操作するときの注意点❷
  • 111 テーブルを使わずに表形式の考え方でデータを扱いたい
  • 112 「次のデータ」を書き込む位置を取得したい❶
  • 113 「次のデータ」を書き込む位置を取得したい❷
  • 114 「次のデータ」を書き込む位置を取得したい❸
  • 115 フィールドの値の種類に合わせて書式を設定したい

Chapter 5 データの集積・集計を行うテクニック

  • 116 複数シートに点在するデータを集めたい
  • 117 開いているブックすべてからデータを集めたい
  • 118 閉じているブックからデータを集めたい
  • 119 指定フォルダー内のブックすべてからデータを集めたい
  • 120 CSVファイルを開きたい
  • 121 固定長形式のファイルを開きたい
  • 122 「001」や「10-1」などの値を変換させずに読み込みたい
  • 123 文字コードを指定してテキストファイルを読み込みたい
  • 124 文字列として認識されているデータを数値に一括変換したい
  • 125 数値の部分だけを抜き出したい
  • 126 指定した文字列に挟まれた部分だけを抜き出したい
  • 127 Streamオブジェクトでファイルを読み込みたい
  • 128 テキストファイルを指定位置から数行分だけ読み込みたい
  • 129 テキストファイルから特定の文字を含む行だけ読み込みたい
  • 130 セルの内容を特定の区切り文字で分割したい
  • 131 セルの内容を指定文字数ごとに分割したい
  • 132 QueryTableを使って好きな位置にデータを読み込みたい
  • 133 Accessのデータベースに接続したい❶
  • 134 Accessのデータベースに接続したい❷
  • 135 Accessのテーブルを読み込みたい
  • 136 Accessのテーブルをフィールド名も含めて読み込みたい
  • 137 Accessのクエリの結果を読み込みたい
  • 138 Accessのパラメータークエリの結果を読み込みたい
  • 139 SQL文を使ってAccessからデータを読み込みたい
  • 140 Accessのテーブルから5番目のレコードを読み込みたい
  • 141 カーソルの種類を指定してAccessに接続したい
  • 142 任意のWebページをPC標準のブラウザーで表示したい
  • 143 文字列をURLエンコードしたい

Chapter 6 Power Queryでデータを扱うテクニック

  • 144 Power Queryを利用したい
  • 145 Power Queryでデータを読み込む処理の基本を知りたい
  • 146 Power Queryのクエリを登録したい
  • 147 Power Queryのコマンドテキストを作成したい
  • 148 Power Queryの結果をテーブルに読み込みたい
  • 149 Power Queryの結果のみをシンプルに読み込みたい
  • 150 Power Queryで現在のブックのデータを加工したい
  • 151 Power Query上でシート単位のデータを扱いたい
  • 152 Power Query上で1行目をフィールドとして扱いたい
  • 153 Power Query上で複数テーブルを連結したい
  • 154 Power Query上でブック内の全テーブルを扱いたい
  • 155 Power Query上でブック内の全シートを扱いたい
  • 156 Power Query上で複数テーブルを結合したい❶
  • 157 Power Query上で複数テーブルを結合したい❷
  • 158 Power Query上で抽出を行いたい
  • 159 Power Queryで最新の5レコードのみ読み込みたい
  • 160 Power Queryで必要な列だけ選択したい
  • 161 Power QueryでAccessから読み込みたい
  • 162 Power QueryでCSVファイルから読み込みたい
  • 163 Power QueryでWebページ内のテーブルを読み込みたい
  • 164 Power QueryでWebページのHTMLドキュメントを取得したい
  • 165 Power QueryでURLエンコードした文字列をデコードしたい
  • 166 Power QueryでXMLやフィード情報を読み込みたい
  • 167 Power Query上でJSON形式のデータを扱いたい
  • 168 Power QueryでPDF内のデータを読み込みたい
  • 169 Power Queryでフォルダー内のデータをすべて読み込みたい
  • 170 Power Queryでクロス集計表のピボットを解除したい
  • 171 Power Queryでカスタム関数を作成したい
  • 172 Power Queryで連結セルやExcel方眼紙データを読み取りたい
  • 173 Power Query側にパラメーターを渡して更新したい
  • 174 Power Query側で動的にフィールド名を取得したい
  • 175 Power Queryで各フィールドのデータ型を指定したい
  • 176 Power Queryで列名を一括変更したい
  • 177 Power Queryで各フィールドにプレフィックスをつけたい
  • 178 Power Queryで任意のフィールド名だけ変更したい
  • 179 Power Queryで新たなフィールドを追加したい
  • 180 Power Queryで新規テーブルを作成したい
  • 181 Power Queryで集計・グループ化したい
  • 182 Power Queryで繰り返し処理を作成したい
  • 183 Power Queryで2列ごとに折り返されたデータをまとめたい
  • 184 Power Queryで2行ごとに分割されたデータをまとめたい
  • 185 Power Queryでカスタムデータ型を作成したい
  • 186 Power Queryで作成したクエリを接続として登録したい
  • 187 「クエリ」や「接続」を一括消去したい

Chapter 7 データを分析するテクニック

  • 188 データを並び替えたい
  • 189 4つ以上の列でソートしたい❶
  • 190 4つ以上の列でソートしたい❷
  • 191 フリガナを無視してソートしたい
  • 192 行頭の数値でソートしたい
  • 193 行頭の型番や枝番を抜き出してソートしたい
  • 194 正規表現で行頭の型番や枝番を抜き出してソートしたい
  • 195 フィルターで抽出したい
  • 196 フィルター矢印を非表示にしたい
  • 197 フィルターで空白のセルを抽出したい
  • 198 フィルターで特定の文字を含む/含まないデータを抽出したい
  • 199 フィルターで末尾の数値を元に抽出したい
  • 200 フィルターで特定の色を抽出したい
  • 201 フィルターで「あ行」のデータを抽出したい
  • 202 フィルターでトップ3や上位10%のデータを抽出したい
  • 203 シートのフィルター状態を調べたい
  • 204 テーブルのあるシートのフィルター状態を調べたい
  • 205 フィルターで特定期間を抽出したい
  • 206 フィルターで今週や今月のデータを抽出したい
  • 207 フィルターで抽出された件数を取得したい
  • 208 フィルターの抽出結果のみを集計したい
  • 209 フィルター状態を解除せずに全データを表示したい
  • 210 フィルターが設定されているセル範囲を取得したい
  • 211 フィルターで抽出されたデータをコピーしたい
  • 212 フィルターで抽出した条件を取得したい
  • 213 フィルターの詳細設定で複数条件を組み合わせて抽出したい
  • 214 フィルターの詳細設定で「か行」のデータを抽出したい
  • 215 フィルターの詳細設定で抽出結果を転記したい
  • 216 フィルターの詳細設定で重複を除いたデータを取り出したい
  • 217 必要なフィールドのみを好きな順番で転記したい
  • 218 フィルターの詳細設定で顧客別売上データを作成したい

Chapter 8 分析を補助するテクニック

  • 219 グラフシートを作成したい
  • 220 グラフオブジェクトを作成したい
  • 221 グラフの種類を指定して作成したい
  • 222 グラフの元データとするセル範囲を更新したい
  • 223 グラフの位置や大きさを指定したい
  • 224 グラフの位置や大きさを揃えたい
  • 225 グラフのタイトルを変更したい
  • 226 第2軸を追加してスケールの異なるデータを見やすくしたい
  • 227 任意のグラフを複製して新規グラフを作成したい
  • 228 平均値を表す系列を追加したい
  • 229 注目させる値のバーを強調したい
  • 230 注目させる値のマーカーを強調したい
  • 231 注目させる値の場所に図形を追加したい
  • 232 「■」記号を使った簡易グラフを作成したい
  • 233 「★」記号を使った5段階評価を作成したい
  • 234 条件付き書式で特定のデータを強調したい
  • 235 条件付き書式が設定されているセルを確認したい
  • 236 条件付き書式をクリアしたい
  • 237 売上金額ベスト3のデータを強調したい
  • 238 平均以上・平均以下のデータを強調したい
  • 239 1行おきに色を付けたい
  • 240 2つ以上の条件付き書式の優先順位を決めたい
  • 241 データバーを表示して傾向を把握したい
  • 242 アイコンセット表示の設定を変更して数値を確認したい
  • 243 ピボットテーブルを作成したい
  • 244 ピボットテーブルのレイアウトを変更したい
  • 245 ピボットテーブルの値フィールドに書式を設定したい
  • 246 ピボットテーブルの特定のアイテムの情報を取得したい
  • 247 ピボットテーブルの特定のアイテムのセル範囲を選択したい
  • 248 ピボットテーブルの特定の集計結果を取得したい
  • 249 ピボットテーブルの特定フィールドに書式を設定したい

Chapter 9 作表に使えるテクニック

  • 250 セルに表示されている状態で値を取得したい
  • 251 セルに「###」が表示されていたら列幅を広げたい
  • 252 セルに表示形式を設定したい
  • 253 セルの表示形式をコピーしたい
  • 254 セルに罫線を引きたい
  • 255 セルの罫線の状態を細かく取得/設定したい
  • 256 セルの値を置き換えたい
  • 257 セルの内容を縮小して全体を表示したい
  • 258 セル内の改行コードを削除したい
  • 259 一部文字列のフォントを変えて「x2 +y」という文字列を作りたい
  • 260 "大村"と引用符のついた文字列を入力したい
  • 261 「1」という数値を「VBA-001」といった文字列に変換したい
  • 262 「11」を「011」や「110」といった文字列に変換したい
  • 263 左右の余分な空白を消去したい
  • 264 文字列内の空白を一括削除したい
  • 265 文字列の全角/半角,ひらがな/カタカナを統一したい
  • 266 数値を漢数字に変換したい
  • 267 一覧表を元に表記の揺れを統一したい
  • 268 カタカナのみを全角に統一したい
  • 269 正規表現で値を置き換えたい
  • 270 正規表現でマッチングした値を取り出したい
  • 271 特定の文字を目安にして1列のデータを整理したい
  • 272 値を1~10,11~20といった範囲ごとに分類したい
  • 273 必要な列のデータのみを抜き出したい
  • 274 リストアップ形式のデータから表形式のデータを作成したい
  • 275 表形式のデータからリストアップ形式のデータを作成したい
  • 276 空白を除いたデータをシリアライズしたい❶
  • 277 空白を除いたデータをシリアライズしたい❷
  • 278 1列のデータを3列や3行ごとに折り返したい
  • 279 セル範囲を1列のデータに変形したい
  • 280 入力されている値に合わせて行・列の幅を自動調整したい
  • 281 現在の行・列の幅を少し拡張したい
  • 282 表形式のデータをツリー形式にしたい
  • 283 ツリー形式の表に罫線を引きたい
  • 284 ツリー形式の表を表形式にしたい❶
  • 285 ツリー形式の表を表形式にしたい❷
  • 286 図形を追加したい
  • 287 図形の位置や大きさを指定したい
  • 288 図形の色を設定したい −Excelで扱う色についての整理
  • 289 図形の線の太さと色を変更したい
  • 290 図形にスタイルを適用したい
  • 291 図形にテキストを表示したい
  • 292 特定種類の図形のみ種類を変更したい
  • 293 吹き出しの引き出し線の位置を調整したい
  • 294 図形を複製したい
  • 295 図形を削除したい
  • 296 選択している図形に対して処理を行いたい
  • 297 [フォーム]のコントロールに影響が出ないように図形を削除したい
  • 298 シート上の図形の有無を厳密にチェックしたい
  • 299 画像を読み込んで指定セルの上に配置したい
  • 300 画像を指定セルに配置したい

Chapter 10 書き出しに使えるテクニック

  • 301 セル範囲をCSV形式で書き出したい
  • 302 セル範囲をテキスト形式で書き出したい
  • 303 自由な形式でテキストファイルへ書き出したい
  • 304 セルに表示されている値のまま書き出したい
  • 305 自分の好みの形式に変換して書き出したい
  • 306 既存ファイルへとデータを付け加えていきたい
  • 307 文字コードをUTF-8として書き出したい
  • 308 Wordドキュメントを作成したい
  • 309 Wordドキュメントにセルの内容を書き出したい
  • 310 Wordドキュメントに書式やスタイルを付けて書き出したい
  • 311 Wordドキュメントの末尾にExcelの内容を追記したい
  • 312 Wordドキュメント内の指定位置にグラフを貼り付けたい
  • 313 PowerPointプレゼンテーションを作成したい
  • 314 PowerPointプレゼンテーションに表を書き出したい
  • 315 PowerPointプレゼンテーションにグラフを貼り付けたい
  • 316 Accessのテーブルにレコードを追加したい
  • 317 Accessに新規テーブルを作成したい
  • 318 AccessのDBに対してSQLコマンドを実行したい
  • 319 AccessのDBにトランザクション処理を実行したい
  • 320 特定のシートのみを印刷したい
  • 321 複数シートをまとめて印刷したい
  • 322 ブック全体を5部ずつ印刷したい
  • 323 特定のセル範囲のみを印刷したい
  • 324 余白をセンチメートル単位で設定したい
  • 325 1枚の用紙に収まるように印刷したい
  • 326 特定ページのみを再印刷したい
  • 327 ヘッダーやフッターに情報を印刷したい
  • 328 マクロで改ページ位置を設定したい
  • 329 印刷の総ページ数を取得したい
  • 330 印刷後の区切り線を消去したい
  • 331 行・列番号や枠線も含めて印刷したい
  • 332 プリンターを選択したい
  • 333 印刷設定の処理時間を短縮したい
  • 334 ブックを印刷できないようにしたい
  • 335 PDFとして出力したい
  • 336 グラフを画像として出力したい

Chapter 11 ブックとシートを操作するテクニック

  • 337 開いているブックを操作したい
  • 338 新規に作成したブックを操作したい
  • 339 マクロを記述してあるブックを操作したい
  • 340 現在画面に表示されているブックを操作したい
  • 341 ブックを開いて操作したい
  • 342 パスワードのかかっているブックを開きたい
  • 343 ブックが読み取り専用かどうかを判断したい
  • 344 ブックの自動保存設定の状態を調べたい
  • 345 ブックのリンクを更新せずに開きたい
  • 346 マクロで開いたブックを履歴に残したい
  • 347 マクロを自動実行させずにブックを開きたい
  • 348 ブックの保存場所を取得したい
  • 349 OneDrive環境でローカル側のブックの保存場所を取得したい
  • 350 拡張子を除いたブック名を取得したい❶
  • 351 拡張子を除いたブック名を取得したい❷
  • 352 ブックを上書き保存したい
  • 353 ブックを別名保存したい
  • 354 ブックのコピーを保存したい
  • 355 ブックにマクロが含まれるかどうかを判定したい
  • 356 ブックの保護状態を取得したい
  • 357 共有ブックを開いているユーザーを取得したい
  • 358 ブックのプロパティを設定したい
  • 359 他のブックのマクロを実行したい
  • 360 ブックを閉じられないようにしたい
  • 361 全ブックの変更を保存せずにExcelを終了させたい
  • 362 確認メッセージを表示させずにブックを閉じたい
  • 363 ブックにパスワードを設定して保存したい
  • 364 開いているすべてのブックを上書き保存したい
  • 365 ブック保存前に再計算を実行したい
  • 366 新規に作成したウィンドウを操作したい
  • 367 分割されているウィンドウのペイン数を取得したい
  • 368 2つのワークシートを左右に同時に表示したい
  • 369 すべての複製ウィンドウをまとめて閉じたい
  • 370 見出しを固定したい
  • 371 見出しを固定してある位置を取得したい
  • 372 ウィンドウのサイズを変更したい
  • 373 ウィンドウの位置を変更したい
  • 374 任意のセル範囲を画面一杯に表示したい
  • 375 任意のシートを操作したい
  • 376 新規シートを追加して操作したい
  • 377 シートの位置を移動したい
  • 378 シート名を変更したい
  • 379 オブジェクト名でシートを扱いたい
  • 380 シート数を取得したい
  • 381 シートをコピーしたい
  • 382 シートをコピーして新規ブックを作成したい
  • 383 シートを削除したい
  • 384 「前のシート」「後ろのシート」を取得したい
  • 385 アクティブシートがワークシートかどうかを判断したい
  • 386 ワークシートを保護/保護を解除したい
  • 387 シートの保護状態を列挙したい
  • 388 ユーザーが再表示できないようにシートを非表示にしたい
  • 389 連番でワークシートを複数作成したい
  • 390 他のシートへと移動する前にチェックを行いたい
  • 391 複数シートをまとめて作業グループとして選択したい
  • 392 作業グループ内の全シートに同じ処理をしたい
  • 393 特定のシート以外を削除したい
  • 394 ワークシートを名前順に並べ替えたい(バブルソート)

Chapter 12 すぐに使える実用テクニック

  • 395 VBAでワークシート関数を利用したい
  • 396 最終セルの下にSUM関数で合計値を入力したい
  • 397 条件に一致するセルの値をSUMIF関数で合計したい
  • 398 文字列の一部が一致する個数をCOUNTIF関数で取得したい
  • 399 Excel方眼紙状のセルから値を取り出したい
  • 400 フィルター結果のみをFILTER関数で取得したい
  • 401 値のソート結果のみをSORT関数で取得したい
  • 402 表引き結果をVLOOKUP関数で取得したい
  • 403 表引き結果をXLOOKUP関数で取得したい
  • 404 セル範囲の値を2次元配列として変数に代入したい
  • 405 2次元配列の値をセル範囲に一括代入したい
  • 406 配列のループ処理を高速化したい
  • 407 イベントの発生を一時的に止めたい
  • 408 画面の更新を一時的に止めたい
  • 409 数式の計算を一時的に止めたい
  • 410 数値の列番号をA1形式の見出し文字列に変換したい
  • 411 全ブック内の全シートから検索を行いたい
  • 412 新規ブックを指定のシート数で作成したい
  • 413 1行おきに行を挿入したい
  • 414 5行おきに罫線を引きたい
  • 415 摂氏を華氏に変換するユーザー定義関数を作りたい
  • 416 フィルターで抽出されなかったデータを削除したい
  • 417 2つの表の両方に存在する行だけを抽出したい
  • 418 2つの表の片方にしか存在しない行を抽出したい
  • 419 任意のセル範囲に「名前」を付けたい
  • 420 任意のセル範囲を画像として貼り付けたい
  • 421 任意のセル範囲を画像としてリンク貼り付けたい
  • 422 セルの値から1次元配列を作成したい
  • 423 Collectionオブジェクトで重複しないデータを取り出したい
  • 424 ループ処理で重複データを削除したい
  • 425 RemoveDuplicatesメソッドで重複データを削除したい
  • 426 UNIQUE関数でユニークなデータを取得したい
  • 427 Excel上で変更があったセルを記録したい
  • 428 レジストリにデータを保存したい
  • 429 レジストリからデータを取得したい
  • 430 レジストリからデータを削除したい

Chapter 13 ファイルやフォルダーを操作するテクニック

  • 431 カレントフォルダーを取得したい
  • 432 カレントフォルダーを変更したい
  • 433 ブックを選択するダイアログを表示したい
  • 434 ブックを選択して開くダイアログを表示したい
  • 435 ファイルを保存するダイアログを表示したい
  • 436 フォルダーをダイアログから選択したい
  • 437 デスクトップへのパスを取得したい
  • 438 OneDriveフォルダーへのパスを取得したい
  • 439 FSOを利用してファイル操作をする準備をしたい
  • 440 FSOでファイルやフォルダーを取得したい
  • 441 FSOでファイル情報やフォルダー情報を取得したい
  • 442 FSOでファイルを作成してデータを書き込みたい
  • 443 FSOで既存ファイルにデータを追記したい
  • 444 FSOでファイル内容を読み込みたい
  • 445 FSOでサブフォルダーを取得したい
  • 446 FSOでフォルダー内の合計サイズを取得したい
  • 447 FSOでドライブの一覧表を作成したい
  • 448 FSOでドライブの空き領域を知りたい
  • 449 FSOでデバイスの準備ができているかを調べたい
  • 450 FSOで指定フォルダーが存在しない場合は作成したい
  • 451 FSOでファイルを移動したい
  • 452 FSOでファイルをコピーしたい
  • 453 FSOでファイル名やフォルダー名を変更したい
  • 454 FSOでフォルダーごとファイルを移動したい
  • 455 FSOでフォルダーごとコピーしたい
  • 456 FSOでフォルダー内のファイルも含めて一括削除したい
  • 457 FSOでファイル名を入れ替えたい
  • 458 ファイル名に連番を付けたい
  • 459 ファイル名の連番をずらしたい
  • 460 シート上の一覧表に沿ってファイル名を変更したい

Chapter 14 ショートカットキーなどに登録して使いたいマクロ

  • 461 どのブックからも利用できるマクロを作成したい
  • 462 個人用マクロブックの場所を調べて削除したい
  • 463 マクロをショートカットキーに登録したい
  • 464 VBAからマクロをショートカットキーに登録したい
  • 465 数式の表示/非表示を切り替えたい
  • 466 セルの枠線の表示/非表示を切り替えたい
  • 467 数式バーの表示/非表示を切り替えたい
  • 468 ステータスバーの表示/非表示を切り替えたい
  • 469 フリガナの表示/非表示を切り替えたい
  • 470 改ページの区切り線の表示/非表示を切り替えたい
  • 471 シートを一括で再表示したい
  • 472 フィルターのオン/オフを切り替えたい
  • 473 数式が入力されているセルだけを保護したい
  • 474 表示倍率を切り替えたい
  • 475 新規シートを末尾に追加したい
  • 476 罫線を除いてセルを貼り付けたい
  • 477 セルの内容を数式からその結果に置き換えたい
  • 478 エラーを含む数式をクリアしたい
  • 479 セルの名前定義を一括で削除したい
  • 480 ブックを保存しているフォルダーをエクスプローラーで開きたい
  • 481 重複した値に色を付けたい
  • 482 入力値を元に選択セル範囲の値を一括更新したい
  • 483 マクロをアドインブックとして配布したい
  • 484 アドインブックをExcelに組み込みたい
  • 485 アドインブックをマクロで組み込みたい
  • 486 アドインブックをマクロで組み込み解除したい
  • 487 アドインを組み込んだ時点でショートカットキーに登録したい
  • 488 アドインを組み込み解除した時点でマクロを実行したい
  • 489 ユーザーフォームからマクロを実行したい
  • 490 カスタムリボンからマクロを実行したい
  • 491 個人用マクロブックをWorkbooksの対象から外したい

Chapter 15 ユーザーフォーム 作成時のテクニック

  • 492 ユーザーフォームを作成したい
  • 493 ユーザーフォームの基本フォントサイズを決めたい
  • 494 2種類の方法でユーザーフォームを表示したい
  • 495 ユーザーフォームの表示位置を指定したい
  • 496 2種類の方法でユーザーフォームを閉じたい
  • 497 ユーザーフォームを閉じるときに処理を実行したい
  • 498 現在のセル位置によって表示するユーザーフォームを切り替えたい
  • 499 ユーザーフォームから標準モジュールのマクロを実行したい
  • 500 ユーザーフォームのタイトルとサイズを設定したい
  • 501 オブジェクト名でコントロールを操作したい
  • 502 コントロールの位置やサイズを設定したい
  • 503 コントロールの使用可否を切り替えたい
  • 504 テキストをラベルを使って配置したい
  • 505 操作をボタンで実行したい
  • 506 既定のボタンとキャンセルボタンを設定したい
  • 507 テキストを入力するテキストボックスを配置したい
  • 508 複数行入力が可能なテキストボックスを配置したい
  • 509 長いテキストをテキストボックスで表示したい
  • 510 必要の有無をチェックボックスで確認したい
  • 511 チェック状態が変わった時点で処理を実行したい
  • 512 複数チェックボックスのイベント処理をまとめて記述したい
  • 513 どの選択肢を選んだのかをオプションボタンで確認したい
  • 514 2つ以上の設問の選択肢をオプションボタンで確認したい
  • 515 ユーザーフォーム上にリストを表示したい
  • 516 ユーザーフォーム上にシート上の表を表示したい
  • 517 リストボックスで選択した内容を取得したい
  • 518 リストボックスに表示されている値を変更したい
  • 519 リストボックスから複数のリストを選択したい
  • 520 リストボックスに項目を追加/削除したい
  • 521 ドロップダウン形式のリストから選択したい
  • 522 任意のコントロールにフォーカスを当てたい
  • 523 タブオーダーを設定して使いやすいフォームにしたい
  • 524 実行時に動的にコントロールを配置したい

Chapter 16 入力用シート作成時のテクニック

  • 525 シート上にボタンやリストを配置したい
  • 526 コントロールに共通の仕組みを知りたい
  • 527 コントロール固有の機能を活用したい
  • 528 リストボックスを活用したい
  • 529 コンボボックスを活用したい
  • 530 チェックボックスを活用したい
  • 531 オプションボタンを活用したい
  • 532 オプションボタンをグループ管理したい
  • 533 スピンボタンを活用したい
  • 534 ボタンや図形に登録するマクロを切り替えたい
  • 535 シート上のコントロールが動作しないときの確認点
  • 536 セル範囲の値を読み上げて確認したい
  • 537 指定テキストを読み上げたい
  • 538 セルに入力した値を読み上げたい

Chapter 17 押さえておくと便利な文法

  • 539 変数や定数を利用したい
  • 540 変数の適用範囲と有効期間を理解したい
  • 541 変数宣言時のコツを知りたい
  • 542 変数名に工夫をして扱いやすくしたい
  • 543 配列を利用したい
  • 544 配列の先頭番号と末尾の番号を指定したい
  • 545 Array関数で手軽に配列を作成したい
  • 546 2次元配列を利用したい
  • 547 配列の先頭番号と末尾の番号を知りたい
  • 548 配列で扱う要素数を実行中に変更したい
  • 549 配列の先頭要素の番号を常に「1」から始めたい
  • 550 区切り文字を基準に文字列から配列を作りたい
  • 551 配列の値を連結して表示したい
  • 552 値の追加・削除が簡単なリストを利用したい
  • 553 連想配列を利用したい❶
  • 554 連想配列を利用したい❷
  • 555 列挙で選択肢を1つのグループにまとめたい
  • 556 複数の定数を使って選択肢を管理したい
  • 557 ユーザー定義型を利用したい
  • 558 Variant型変数に格納されたデータ型を確認したい
  • 559 開発時に任意の変数に格納されたデータ型や値を調べたい
  • 560 開発時にすべての変数に格納されたデータ型や値を調べたい
  • 561 変数の値が変化したら一時停止して確かめたい
  • 562 チェック項目を満たさない場合は自動で中断モードに移行したい
  • 563 処理の一部をサブルーチン化したい
  • 564 サブルーチンに引数を指定して実行したい
  • 565 参照渡しと値渡しの違いを知りたい
  • 566 ユーザー定義の関数を作成したい
  • 567 引数を省略可能にしたい
  • 568 引数が省略されているかどうかを知りたい
  • 569 複数の引数をパラメーターとして受け取りたい
  • 570 オブジェクトを返すユーザー定義関数を作成したい
  • 571 モジュール単位でマクロを整理して呼び出しやすくしたい
  • 572 カスタムクラス(オブジェクト)を作成したい
  • 573 カスタムクラスにプロパティを定義したい
  • 574 カスタムクラスにメソッドを定義したい
  • 575 カスタムクラスに初期化処理を定義したい
  • 576 カスタムクラスをまとめて扱うコレクション風のオブジェクトを作成したい
  • 577 クラスモジュール特有の同じ「名前」の解決方法を知りたい
  • 578 既存シートをカスタムオブジェクトと見なして扱いたい
  • 579 シートのモジュール独特のスコープを知りたい
  • 580 エラーが発生したら処理を分岐したい
  • 581 エラーの監視を解除したい
  • 582 エラーを無視して次の行の処理を実行したい
  • 583 エラーの種類を確認して処理を分岐したい
  • 584 エラーに対応後に元の処理をやり直したい
  • 585 エラー情報をクリアしたい
  • 586 決まった文字数のデータを作成したい
  • 587 右詰め,左詰めでデータを作成したい
  • 588 固定長文字列のパディングを行いたい
  • 589 固定長文字列を使って出力を見やすく整えたい
  • 590 マクロを途中で抜けたい
  • 591 マクロを途中で完全に終了したい
  • 592 ループ処理内の残りの処理をスキップしたい
  • 593 シート名を返すワークシート関数を作成したい
  • 594 処理にかかった時間を計測したい

Chapter 18 開発時や確認時に役立つテクニック

  • 595 1行ずつマクロを実行したい
  • 596 イミディエイトウィンドウに値を出力したい
  • 597 イミディエイトウィンドウに値を続けて出力したい
  • 598 ちょっとしたステートメントを手軽に実行したい
  • 599 もっと手軽に変数やセルの値を出力したい
  • 600 2行以上必要なステートメントを1行で記述したい
  • 601 ブレークポイントを設定せずにコードを一時中断するポイントを作成したい
  • 602 セル内改行に合わせて数式バーの表示行数を調整したい
  • 603 ファイルのヘッダ情報を取得したい
  • 604 OS名やバージョン番号を取得したい
  • 605 Excelのバージョン情報を取得したい
  • 606 VBEをコードから操作したい
  • 607 モジュールをエクスポートしたい
  • 608 モジュールを削除(解放)したい
  • 609 モジュールをインポートしたい
  • 610 モジュール内容を検索してマクロ一覧を作成したい
  • 611 コードテキストを追加・修正したい
  • 612 特定のプログラムを実行したい
  • 613 PowerShellコマンドを実行してフォルダーをZIP圧縮したい
  • 614 PowerShellコマンドの出力を受け取りたい
  • 615 10分後にマクロを実行したい
  • 616 一定間隔でマクロを実行したい
  • 617 1秒以下の間隔でマクロを実行したい
  • 618 配列を並べ替えたい(マージソート)
  • 619 配列を並べ替えたい(マージ・クイックソート)
  • 620 配列を並べ替えたい(クイックソート)
  • 621 ランダムな値を作成したい
  • 622 ランダムな値を利用してテスト用の値を選びたい
  • 623 ランダムな値をワークシート関数から取得したい

Chapter 19 VBEをより便利に活用するテクニック

  • 624 VBEのフォントや背景色を変更したい
  • 625 構文エラー時にエラーダイアログを表示させないようにしたい
  • 626 開発中に手早く前後のマクロに移動したい
  • 627 開発中に手早く呼び出しているマクロや変数の定義へ移動したい
  • 628 コード内の検索や置換を行いたい
  • 629 変数名をまとめて置換したい
  • 630 まとめてインデントの深さを調整したい
  • 631 インデントの長さを調整したい
  • 632 選択している行のコード全体をすばやく削除したい
  • 633 プロパティ名やメソッド名だけ選択したい
  • 634 開発中だけ実行する箇所を用意したい

Chapter 20 APIを利用したテクニック

  • 635 Windows APIの概要を知りたい
  • 636 2種類のWindows APIについて知りたい
  • 637 Windows APIをVBAから使用できるようにしたい
  • 638 アプリケーションの重複起動を回避したい
  • 639 アプリケーションが終了するまで待機したい
  • 640 すべてのペイントを閉じたい
  • 641 ウィンドウを前面に表示したい
  • 642 ファイルやフォルダーをごみ箱に移動したい
  • 643 画面解像度を取得したい
  • 644 Excelの[閉じる]ボタンを無効にしたい
  • 645 ユーザーフォームの[閉じる]ボタンを無効にしたい
  • 646 ユーザーフォームの[閉じる]ボタンを消去したい
  • 647 ユーザーフォームの最大化・最小化・リサイズを可能にしたい
  • 648 ミリ秒単位でコードの実行速度を計測したい
  • 649 ミリ秒単位でコードの実行を中断したい
  • 650 拡張子に関連付けられているプログラムを知りたい

サポート

ダウンロード

サンプルファイルのダウンロード

(2026年4月8日更新)

本書のサンプルファイルを,下記リンクからダウンロードすることができます。

ダウンロードにミスがあると正しく利用できませんので,よくお確かめください。

また,ご利用にあたってはサンプルファイルの利用方法をご確認ください。

サンプルファイルについて,一般的な環境においては特に問題のないことを確認しておりますが,万一障害が発生し,その結果いかなる損害が生じたとしても,小社および著者はなんら責任を負うものではありません。また生じた損害に対する一切の保証をいたしかねます。必ずご自身の判断と責任においてご利用ください。

サンプルファイルは,著作権法上の保護を受けています。収録されているファイルの一部,あるいは全部について,いかなる方法においても無断で複写,複製,再配布することは禁じられています。

以上のことをご確認,ご了承の上,データをご利用願います。

ダウンロード
サンプルファイル.zip

商品一覧