Excel VBA実用マクロ800連発
【中・上級編】

[表紙]Excel VBA実用マクロ800連発【中・上級編】

紙版発売

B5変形判/256ページ/CD1枚

定価2,838円(本体2,580円+税10%)

ISBN 978-4-7741-5014-7

ただいま弊社在庫はございません。

→学校・法人一括購入ご検討の皆様へ

書籍の概要

この本の概要

そのまま使える実用的なマクロを1600個以上集め,800個のExcelブックファイルにまとめた1冊です。本で収録マクロの概要を確認し,目的のマクロを見つけたら,付属CD-ROMから該当するサンプルブックを開きます。サンプルブックでは,マクロの実行や,コードやコードの解説の確認ができます。番号を入力するだけでサンプルブックを開けるツールも収録。

こんな方におすすめ

  • Excel VBAでマクロを作成する人
  • マクロ作成に必要な時間を短縮したい人

目次

第1部 サンプルマクロの利用方法

  • 1 本と付属CD-ROMの使い方
  • 2 お試し環境の整え方
  • 3 サンプルブックの使い方
  • 4 マクロコードを見る方法
  • 5 VBE画面の見方

第2部 実用マクロ800連発

第1章 パソコン環境

コンピューター名・ドメイン名

  • 1 コンピューター名/ドメイン名を取得

パソコン本体

  • 2 ユーザー名/所属名を取得
  • 3 日付/時刻を取得
  • <2003以前> 4 使用可能メモリ容量/既使用メモリ容量/データ使用中メモリ容量を取得

OS

  • 5 OSの名前とバージョンを取得
  • 6 OSがWindowsXP系かどうかを判別
  • 7 パスセパレーターを取得

Excel

  • 8 Excelのバージョンを取得・2007以降かどうかを判別
  • 9 Excelのグローバル一意識別子/プロダクトIDを取得
  • 10 Excelを終了・ブックを保存しないで/保存してExcelを終了
  • 11 バージョンによって条件付きコンパイルを行う

ドライブ

  • 12 ドライブの一覧表を作成
  • 13 ドライブの有無を調べる
  • 14 光学ドライブを探して媒体挿入状況を取得

フォルダー・ファイル

  • 15 フォルダーの存在を調べる
  • 16 フォルダー名を取得
  • 17 フォルダー中のすべてのサブフォルダーの名前を取得
  • 18 カレントフォルダーを変更
  • 19 フォルダー/ファイルの属性を取得
  • 20 ファイルの存在を調べる

パス

  • 21 指定ドライブの現在のパス/現在ドライブのパスを取得
  • 22 ファイルを開くときに使う既定のパスを取得/設定
  • 23 カレントフォルダーのパスを取得
  • 24 アクティブブック/実行中マクロがあるブックのパス/フルパスを取得
  • 25 フルパスからフォルダーパスを取得
  • 26 フルパスからファイル名/ベース名/拡張子を取得
  • 27 参照ダイアログボックスでファイル/フォルダーのパスを取得

第2章 ファイル操作

ブックを開く

  • 28 ブックを開く・最近使用したファイルリストのブックを開く
  • 29 ブックを新規作成・入力したワークシート数で新規作成
  • 30 ブックが開いているか調べる

ファイルを開く

  • 31 ダイアログボックスを表示してファイルを開く
  • 32 ダイアログボックスのファイル名をフィルタリングして表示
  • 33 ダイアログボックスのファイル名を指定して表示

ブックの状態

  • 34 ブックが開かれたときにExcelウインドウを最大化
  • 35 ブックが開かれたときに注意書きを表示
  • 36 ドキュメントプロパティの値を取得/設定・組み込みドキュメントプロパティの名前を列挙
  • 37 個人情報の削除可否を設定
  • 38 ブックをアクティブにする
  • 39 ブックの名前を取得
  • 40 計算方法のモードを取得/設定
  • 41 ブックの保存してない変更の有無を取得・変更がなかったことにする
  • <2007以降> 42 ブックのマクロ添付状況を取得
  • 43 ファイルのサイズを取得
  • 44 ファイルの作成日時/最終アクセス日時を取得
  • 45 ファイル/アクティブブックの更新日時を取得
  • 46 外部リンクされているブックを開く
  • 47 外部リンクを列挙する
  • 48 リンク先のセルを表示する
  • 49 ほかのブックへのリンク先を取得

ブックのアクセス権

  • 50 読み取り専用属性を取得・読み取り専用に設定/解除
  • 51 読み取りパスワードの設定状況を取得・読み取りパスワードを設定/解除
  • 52 書き込みパスワードを設定/解除
  • 53 ブックのシート構成を保護・ブックを非保護にする
  • <2007以降> 54 ブックを最終版として設定・最終版かどうか調べる

ブックのテーマ

  • <2007以降> 55 ブックにテーマを設定

ブックを保存

  • 56 ブックを上書き保存・内容が変更されていたら上書き保存
  • 57 アクティブブックに名前を付けて保存・現在の日付と時刻をブック名にして保存
  • 58 バックアップファイルを作成して名前を付けて保存
  • <2007以降> 59 マクロ添付状況をに合うファイル形式で名前を付けて保存
  • 60 名前を付けて保存ダイアログボックスを表示・名前を付けて保存ダイアログボックスで保存
  • 61 ブックをWebページとして保存・セル範囲をWebページに追加
  • <2007以降> 62 ブックをPDF形式で保存
  • 63 アクティブブックのコピーを保存
  • 64 開いているすべてのブックを保存
  • 65 アクティブシートだけを新ブック名で保存
  • 66 ブックを非表示にしてから保存して閉じる
  • 67 作業状態を保存

ブックを閉じる

  • 68 アクティブブックを閉じる・変更を保存しないで閉じる
  • 69 すべてのブックを閉じる/保存して閉じる/保存しないで閉じる
  • 70 アクティブブックだけを保存してすべてのブックを閉じる

フォルダー操作

  • 71 フォルダー選択/フォルダー参照ダイアログボックスを表示してフォルダー名を取得
  • 72 フォルダーを作成
  • 73 フォルダーのコピーを作成・フォルダーのコピーを新しい名前で作成
  • 74 フォルダーを削除・フォルダーとそのフォルダー内の全ファイルを削除

ファイル操作

  • 75 フォルダー内のファイル名を列挙・名前を付けて保存ダイアログボックスでファイル名を取得
  • 76 ファイル名を変更
  • 77 ファイルをコピー
  • 78 ファイルを移動
  • 79 ファイルを削除

テキストファイル

  • 80 タブ区切り/カンマ区切り(CSV)のテキストファイルを開く
  • 81 固定長フィールドのテキストファイルを開く
  • 82 ファイルダイアログボックスを表示してテキストファイルを開く
  • 83 テキストファイルを行単位で/ユニコードテキストファイルの全データを1つのセルへ読み込む
  • 84 CSVファイルを文字列として開く
  • 85 シートの内容をテキストファイルとして出力
  • 86 選択範囲の内容をCSVファイルとして出力
  • 87 シートの内容を固定長のテキストファイルとして出力
  • 88 フィールド数が異なるテキストファイルを出力
  • 89 シートの数式をテキストファイルとして出力
  • 90 指定シートをタブ区切りテキストファイルとして保存
  • 91 テキストファイルをすべて閉じる

XMLデータファイル

  • 92 XMLスプレッドシートを開く
  • <2003以降> 93 XMLスプレットシートを開いてXMLリスト形式で表示

第3章 シート操作

シートの挿入

  • 94 ワークシートを挿入

シートの枚数

  • 95 アクティブブック/開いているブックのワークシート枚数を取得

シートのコピー

  • 96 ワークシートをコピーして挿入

シートの名前

  • 97 アクティブシート/特定シートの名前を変更
  • 98 新しいワークシートを挿入して名前を変更
  • 99 ブック内のシートの名前を順に取得/ワークシートに出力・配列に取得・特定シートの有無を調べる
  • 100 シートのオブジェクト名を取得

シート見出し

  • 101 シート見出しのインデックス番号を取得
  • 102 シート見出し領域と水平スクロールバーの幅の比率を取得/設定
  • 103 シート見出しをスクロール
  • 104 シート見出しを月に合わせてスクロール
  • 105 シート見出しを並べ替える
  • 106 シートを移動
  • 107 シート見出しの色を取得/設定/RGB値で設定/リセット
  • 108 シート見出しの表示/非表示を設定

シートの選択・表示

  • 109 ワークシートを選択/アクティブにする・他ブックのワークシートをアクティブにする
  • 110 左側/右側のシートを選択
  • 111 ワークシートの作業グループを設定・選択されているワークシートを作業グループにする
  • 112 選択されているすべてのシートの名前を取得
  • 113 ワークシートを非表示にする・非表示にしたワークシートを再表示する
  • 114 シート/ワークシート/グラフシートの数を取得

シートの背景

  • 115 ワークシートの背景にグラフィックスを設定/削除
  • 116 ワークシートの背景を指定した色で塗りつぶす・背景の色をなしにする

シート保護

  • 117 シートの保護を設定/解除・シートが保護されているか調べる
  • 118 パスワードを設定してシートを保護・パスワードを指定してシートの保護を解除
  • 119 並べ替え可能な状態にしてシートを保護
  • 120 オートフィルターを使用可能にしてシートを保護
  • 121 ピボットテーブルレポートを使用可能にしてシートを保護
  • 122 数式セルをロックしてからシートを保護・数式セルをロックし数式を非表示にしてシートを保護
  • 123 シートを保護してからすべてのセル/ロックされたセルを選択禁止にする

シート削除

  • 124 アクティブシート/指定シートを無条件で削除
  • 125 未使用のワークシートを削除

シート移動

  • 126 シート/ワークシート/グラフシートを新規ブックへ移動

Worksheet_Changeイベント

  • 127 Tabキーで入力したかEnterキーかを判定

Worksheet_BeforeRightClickイベント

  • 128 ワークシート上での右クリックを無効にする

Worksheet_BeforeDoubleClickイベント

  • 129 ワークシート上でのダブルクリックを無効にする

Worksheet_Activateイベント

  • 130 ワークシートがアクティブになったらソートする

第4章 画面制御

タイトルバー

  • 131 タイトルバーに表示される名前を設定/取得/リセット

数式バー

  • 132 数式バーを非表示にする/表示する・表示状態を取得する
  • 133 数式バーの数式を非表示にする/表示する・表示状態を取得する

ステータスバー

  • 134 ステータスバーを非表示にする/表示する・表示状態を取得する
  • 135  ステータスバーの文字列などを設定/取得/既定値にする

リボン

  • <2007以降> 136 リボンを非表示にする/表示する
  • <2007以降> 137 開発タブを表示する/非表示にする

メニューバー

  • 138 メニューバーを初期化する
  • 139 新しいメニューとメニュー項目を追加
  • 140 指定した表示位置へ新しいメニューを追加
  • <2003以前> 141 [ファイル]メニューを削除
  • 142 ショートカットメニューにコマンドを追加/追加したコマンドを削除・ショートカットメニューを初期状態にする

ツールバー

  • <2003以前> 143 標準ツールバーを非表示にする/表示する
  • <2003以前> 144 書式設定ツールバーを非表示にする/表示する
  • 145 フォント名をフォントコントロールのリストから取得
  • <2003以前> 146 Webツールバーが表示されていなければ表示する/非表示にする

Excelウィンドウ

  • 147 Excelウィンドウの表示状態を取得/設定
  • 148 Excelウィンドウの幅/高さを取得/設定・最大幅/最大高さを取得
  • 149 Excelウィンドウの表示位置を取得/設定
  • 150 Excelウィンドウの表示位置を設定
  • 151 Excelウィンドウを非表示にする/表示する
  • 152 全画面表示モードを取得/設定/解除
  • 153 画面表示の更新設定状況を取得・更新するように/しないように設定

ブックウィンドウ

  • 154 開いているブックウィンドウの数/キャプションを取得
  • 155 ブックウィンドウの表示状態を取得/設定
  • 156 ウィンドウの表示倍率を取得・指定した倍率で/ウィンドウサイズに合わせてズーム
  • 157 アクティブウィンドウ/作業中ブックの新しいウィンドウを開く・指定したブックのウィンドウをアクティブにする
  • 158 同一ブック内のワークシートを並べて表示/並べた表示を戻す
  • 159 異なるブックのワークシートを並べて表示
  • <2003以降> 160 複数のブックを並べて比較・同時にスクロールの解除/設定・並べて比較のウィンドウを元に戻す・並べて比較を解除・並べて比較ツールバーを非表示にする
  • 161 ウィンドウ枠を固定・水平方向/垂直方向にウィンドウ枠を固定・ウィンドウ枠固定を解除
  • 162 ウィンドウ分割を設定/解除
  • 163 ブックウィンドウの表示状態を取得・非表示にする/表示する

ウィンドウオプション

  • 164 数式の表示状態を取得・非表示にする/表示する
  • 165 枠線を非表示にする/表示する・枠線の色を設定
  • 166 行列番号の表示状態を取得・非表示にする/表示する
  • 167 ゼロ値を非表示にする/表示する・指定セル範囲だけゼロ値を非表示にする/表示する
  • 168 画面設定ダイアログボックスを表示

スクロール

  • 169 水平スクロールバーを非表示にする/表示する・水平スクロールバーの幅の比率を取得/設定
  • 170 垂直スクロールバーを非表示にする/表示する
  • 171 ウィンドウをスクロール・指定ページ数分スクロール
  • 172 指定した行が上端/指定した列が左端になるようにウィンドウをスクロール・ウィンドウの左上端に表示されるセルの行列番号を取得
  • 173 指定セルがウィンドウの左上端になるようにスクロール

マウスポインター

  • 174 マウスポインターの形状を取得/設定

VBEウィンドウ

  • 175 VBE画面を表示する/非表示にする・キャプションを取得

第5章 セル制御

行操作

  • 176 行を選択
  • 177 指定セル範囲内の行を相対的に選択
  • 178 行を挿入/削除
  • 179 行を非表示にする/再表示する
  • 180 行の高さを取得・高さの合計を取得
  • 181 行の高さを設定/最適化
  • 182 ワークシートの総行数を取得

列操作

  • 183 列を選択
  • 184 指定セル範囲内の列を相対的に選択
  • 185 列を挿入/削除
  • 186 列を非表示にする/再表示する
  • 187 A1形式の列名/R1C1形式の列番号に変換・セル範囲の最後の列番号を取得
  • 188 列の幅を取得・列の幅をポイント単位で取得/ミリ単位に換算・列の幅の合計を取得
  • 189 列の幅を設定
  • 190 標準列幅を取得/設定
  • 191 列の幅を自動調節
  • 192 ワークシートの総列数を取得

セル操作

  • 193 セルを挿入/削除
  • 194 セルアドレスの参照/数式のセル参照を変換
  • 195 アクティブセルのアドレス/行列番号を取得
  • 196 行数/列数を取得
  • 197 アクティブセルの表示位置/行番号フィールドの幅を取得
  • 198 表示中の画面の左上端セルを取得
  • 199 セルの情報を取得
  • 200 セルのロック状況を取得
  • 201 セル範囲に名前を付ける・セル範囲を名前で選択・セル範囲の名前を削除
  • 202 名前付きセル範囲を集合させて選択
  • 203 セルのドラッグ&ドロップ編集を不可能にする/可能にする

セル選択

  • 204 1つのセルを選択・1つのセルを行と列の番号/インデックス番号で指定して選択・指定セル範囲内のn番目のセルを選択
  • 205 不連続なセルを選択・不連続なセルを変数で指定して選択
  • 206 アクティブシート/他シートのセル範囲を選択
  • 207 すべてのセルを選択・条件を満たしているすべてのセルを選択
  • 208 セルが選択されているか調べる
  • 209 選択領域のサイズを操作
  • 210 選択範囲をオフセットする
  • 211 複数セル範囲の共有セル範囲を取得・選択範囲が所定範囲内か調べる
  • 212 アクティブセル領域を選択・アクティブセル領域の見出し行以外を選択
  • 213 アクティブセルを選択・アクティブセルの右隣/左隣のセルを選択
  • 214 アクティブウィンドウのセル範囲/左上端セルの行列番号を取得
  • 215 使われたセル範囲を選択・使われたセル範囲内の最後のセルのアドレスを取得
  • 216 可視セルを選択してコピーし他のシートへ貼り付ける
  • 217 インプットボックスで入力されたセル範囲を取得
  • 218 端セルを選択
  • 219 ワークシートの最大行数を基準にして下端セル/最大列数を基準にして右端セルを選択
  • 220 データの入ってない行を調べて選択(罫線のある表)

セル結合

  • 221 セルを結合・結合セルを解除
  • 222 セルを行ごとに結合・結合セルを含んだセル範囲を結合・指定セルを含んだ結合セル範囲を取得
  • 223 セルが結合されているか調べる・結合セルの値をクリア

セル集合

  • 224 複数のセル範囲を集合させて選択/値をセット/数式をセット・集合をクリア

セル書式-表示形式

  • 225 セルの表示形式を設定
  • 226 負の数を色で表す書式になっているか調べる
  • 227 時刻を25時のように表示
  • 228 前ゼロを付けて3桁表示ための書式を設定

セル書式-配置

  • 229 セルの文字の配置の横位置/縦位置を設定・セルの文字を折り返して表示
  • 230 文字列をセル内で改行・セル内改行をすべて削除
  • 231 インデントのレベルを取得/設定/クリア/増減

セル書式-フォント

  • 232 フォントのスタイルを設定
  • 233 フォントの色を自動に設定・カラーパレットのインデックス番号/RGB値で設定
  • 234 セルの文字列の一部分を斜体にする
  • 235 セル内のすべてのフォント名を取得

セル書式-罫線

  • 236 格子線と外枠線を引く
  • 237 罫線を表形式に設定
  • 238 罫線を設定
  • 239 斜線を設定
  • 240 矢印キーでセルに罫線を引く
  • 241 罫線の色を設定
  • 242 罫線を削除

セル枠線

  • 243 アクティブウィンドウの枠線の色を取得/設定/自動に戻す

セル書式-網掛け

  • 244 セルの網かけの色を設定/取得/なしにする
  • 245 セルの網かけのパターンを設定/取得/なしにする
  • 246 マウスで選択されたセルに網かけする
  • 247 一定行間隔で網掛けする
  • 248 数式セルに網掛けする
  • 249 セルの網かけの色をReplaceメソッドで設定

オートフォーマット

  • 250 オートフォーマットを適用/削除

条件付き書式

  • 251 条件付き書式が設定されているセルを選択
  • 252 条件付き書式を変更・指定セル範囲から/シート全体から削除
  • <2007以降> 253 データバーを表示する
  • <2007以降> 254 カラースケールを表示する
  • <2007以降> 255 アイコンセットを表示する

スタイル

  • 256 独自のスタイルを作成/削除・セル範囲に適用・セル範囲のスタイルを標準に戻す

入力制御

  • 257 データ入力モードの状態を取得・データ入力モードをオン/オフにする
  • 258 すべてのセルを選択禁止/選択可能にする・非ロックセルだけ選択可能にする
  • 259 入力範囲を設定/解除
  • 260 入力後セル移動方向と移動制御の設定を取得・入力後セル移動方向を設定・入力後にセルが移動しないように設定
  • 261 CapsLockをオンにする

入力規則

  • 262 入力可能な文字数を設定・入力規則をすべてクリア
  • 263 入力可能な数値の範囲を設定
  • 264 入力可能な日付の範囲を設定
  • 265 入力規則の変更を不可能にする/可能にする
  • 266 すべての入力規則設定セルを選択・選択されているセルと同じ入力規則が設定されたセルを選択

IME

  • 267 IMEの状態を取得・IMEモードを取得
  • 268 IMEをオン/オフにする・初期入力モードをひらがなにする・変換モードを人名地名にする
  • 269 IMEを入力規則でひらがなモード/オフにする

コメント

  • 270 コメントを挿入/削除・コメントが設定されているか調べる
  • 271 コメントを編集・コメントのフォントを変更・すべてのセルのコメントのフォントを変更
  • 272 コメントを表示する/非表示にする・すべてのセルのコメントを非表示にする

参照元

  • 273 参照元をトレース・参照元トレース矢印/トレース矢印すべてを削除・参照元セル/直接参照元セルのアドレスを取得

参照先

  • 274 参照先をトレース・参照先トレース矢印/トレース矢印すべてを削除・参照先セル/直接参照先セルのアドレスを取得

参照文字列

  • 275 参照文字列が指し示すセルの値を取得

クリア

  • 276 シート全体をクリア
  • 277 指定セル範囲をクリア
  • 278 セル範囲の数式と値/数式だけ/値だけをクリア
  • 279 セル範囲/複数セル範囲の書式をクリア
  • 280 ハイパーリンクの設定だけ/設定と表示文字列を削除

すべてコピー

  • 281 指定セル範囲をクリップボードへコピー
  • 282 使われたセル範囲/選択セルを含む行全体/選択セルを含む列全体/すべてのセルを
  •  クリップボードへコピー
  • 283 指定セル範囲をコピーしてすべて貼り付ける
  • 284 セル範囲を他のすべてのワークシートにコピー
  • 285 表示されている行だけをコピーして他のシートへ貼り付ける
  • 286 オートフィルターした結果をコピーして貼り付ける・オートフィルターして結果をコピーして貼り付ける
  • 287 入力シートをコピーして一番古い日時を持つシートに貼り付ける
  • 288 クリップボードを経由しないでコピー
  • 289 上端セルの内容と書式を下方向セル範囲に複写
  • 290 セルの内容を切り取って他のセルへ貼り付ける

値コピー

  • 291 セル範囲をコピーして値/値と数値の書式を貼り付ける・行列を入れ替えて/空白セルを無視して値を貼り付ける
  • 292 アクティブセル領域をコピーして値を貼り付ける
  • 293 エラー値を空白にしながら値をコピー
  • 294 既存データの下の行へ新テータを貼り付ける
  • 295 指定したセル範囲/異なるシートの指定したセル範囲の値を等しくする

数式コピー

  • 296 セル範囲をコピーして数式/数式と数値の書式を貼り付ける
  • 297 C列のセルが空白でない行のA列とB列に数式を貼り付ける

書式コピー

  • 298 セル範囲をコピーして書式/列幅を貼り付ける・行列を入れ替えて書式を貼り付ける

画像コピー

  • 299 セル範囲をビットマップ/印刷用画像にして新しいブックへ貼り付ける
  • 300 セル範囲をコピーして他のシートへ図のリンク貼り付け
  • 301 ピクチャだけをコピーして別のシートにビットマップとして貼り付ける
  • 302 グラフをビットマップとしてクリップボードへコピー・グラフを印刷用画像としてコピーしワークシートへ貼り付ける

その他コピー

  • 303 コメント/入力規則をコピー貼り付けする・セル範囲をコピーして罫線を除くすべてを貼り付ける
  • 304 クリップボードにピクチャがあればセルに貼り付ける・クリップボードが空か調べる・クリップボードを空にする
  • 305 コピーモードの状態を取得・コピーモードを解除

第6章 テーブル(リストオブジェクト)

テーブル

  • <2007以降> 306 テーブルとして書式設定・テーブルを削除
  • <2007以降> 307 テーブルとしての機能を削除
  • <2007以降> 308 テーブルのスタイルを取得/設定
  • <2007以降> 309 テーブルのソースタイプを取得
  • <2007以降> 310 テーブルを選択

リストオブジェクト

  • <2003用> 311 リストオブジェクトを作成/削除
  • <2003用> 312 リストオブジェクトとしての機能を削除
  • <2003用> 313 リストオブジェクトのデータ挿入行を選択

テーブル(リストオブジェクト)

  • <2003以降> 314 テーブル(リストオブジェクト)の名前を取得
  • <2003以降> 315 テーブル(リストオブジェクト)に行を挿入/削除・下端に行を追加・データ範囲の行を削除
  • <2003以降> 316 テーブル(リストオブジェクト)に列を挿入/削除・右端に列を追加
  • <2003以降> 317 テーブル(リストオブジェクト)の範囲を選択
  • <2003以降> 318 テーブル(リストオブジェクト)の範囲を変更
  • <2003以降> 319 テーブル(リストオブジェクト)の範囲を印刷/印刷プレビュー
  • <2003以降> 320 テーブル(リストオブジェクト)の範囲をコピー
  • <2003以降> 321 テーブル(リストオブジェクト)の見出し行を選択・見出し行の各列/n列目の名前を取得
  • <2003以降> 322 テーブル(リストオブジェクト)のデータ範囲を選択
  • <2003以降> 323 テーブル(リストオブジェクト)のデータ範囲をコピー
  • <2003以降> 324 テーブル(リストオブジェクト)の集計行を表示する/非表示にする
  • <2003以降> 325 テーブル(リストオブジェクト)の集計行の計算の種類を設定

第7章 データ抽出・検索

オートフィルター準備

  • 326 オートフィルターモードを取得/反転/解除
  • 327 フィルターモードのまますべてのデータを表示
  • 328 オートフィルターしたリストに非表示の行があればすべて表示
  • 329 オートフィルターを使用可能にしてシートを保護

オートフィルター抽出

  • 330 一致するデータを抽出
  • 331 社員だけを抽出して新しい名簿を作成
  • 332 オートフィルターで抽出後にそのフィールド矢印を非表示にする
  • 333 見出しの2行目でオートフィルターする
  • 334 トップ3を抽出
  • <2007以降> 335 平均より上を抽出
  • <2007以降> 336 セルの色で抽出
  • <2007以降> 337 フォントの色で抽出

オートフィルター後処理

  • 338 抽出した行数を取得
  • 339 抽出して最上行/最下行を取得
  • 340 オートフィルターで抽出したデータの最上行の値を取得
  • 341 数量が30以上の行を抽出してそのセルを空白にする
  • 342 オートフィルターで抽出した件数を取得
  • 343 抽出して見出し部とデータ部をコピー
  • 344 抽出してデータ部をコピー

フィルターオプション

  • 345 抽出して結果を他のシートにセット
  • 346 フィルターオプションの設定で日付の重複を取り除く

表検索

  • 347 表をVLookupで検索して給与所得控除額を求める
  • 348 郵便番号から住所を検索
  • 349 表をHLookupで検索して保険料率を取得
  • 350 日付をHLookupで検索して値を取得
  • 351 条件を満たすレコードの最大値/最小値を取得
  • 352 Index関数で行列番号を指定して値を取得
  • 353 表を検索して該当データの位置を取得
  • 354 相手方にないデータと相手方にもあるデータを選び出す
  • 355 組番号から漢字表記の組名を取得
  • 356 Choose関数で店番から所在地を取得
  • 357 文字列の中から指定文字の位置を調べる
  • 358 指定文字列が最初に見つかったセルのアドレスを取得
  • 359 セルの書式を条件にして検索
  • 360 セルの書式の検索条件を設定/取得/クリア
  • 361 全ブックの全シートを検索し見つかったセルを順に表示
  • 362 セルの文字列の一部が一致したら確認して/無条件で置換
  • 363 生年月日を部分一致比較して指定誕生月の名簿を作成
  • 364 行単位/列単位で比較セルと内容の異なるセルを選択

第8章 データ編集・変換

セルの値-取得

  • 365 セルの値を取得
  • 366 セルに入力/表示された値を取得
  • 367 ダブルクォーテーションマークで囲まれた文字列を取り出す
  • 368 数値を超えない最大の整数を取得

セルの値-設定

  • 369 セルに値をセットする(R1C1方式)
  • 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 セルの値が上限値以内か調べる

セルの値-計算

  • 395 セルの値の合計を計算
  • 396 条件を満たすレコードの合計を計算
  • 397 条件を満たすレコードの数値セルの個数を取得
  • 398 複数のシートの値を別のシートに統合

数式

  • 399 セルに数式をセットする(A1方式/R1C1方式)
  • 400 数式セルを選択
  • 401 数式のセル参照形式を変換

文字列編集

  • 402 文字列の文字数/バイト数を取得
  • 403 文字列の文字数をスペースを付けて揃える
  • 404 文字列の左部分/右部分を取得
  • 405 文字列の中央部分/残り部分を取得
  • 406 アンダーバーの前後の文字列/アンダーバーで区切られた文字列を取得
  • 407 セルのデータを分割して指定セルへセットする
  • 408 数値を文字列に編集して表示
  • 409 文字列の文字の並びを逆にする

文字列変換

  • 410 半角文字と全角文字を変換
  • 411 半角の英数カナを全角に変換
  • 412 半角数字を漢数字に変換
  • 413 半角数字を大字に変換
  • 414 ひらがなと全角カナタナを変換
  • 415 アルファベットの大文字と小文字を変換
  • 416 アラビア数字をローマ数字に変換
  • 417 西暦文字列と和暦文字列を変換

文字列置換

  • 418 文字列の一部分を他の文字に置換
  • 419 全角のダブルクォーテーションマークを削除
  • 420 アクティブシート内のスペースをすべて削除
  • 421 置換ダイアログボックスを表示

文字コード

  • 422 文字コード一覧表を作成・文字から文字コードを取得・文字コードから文字を取得
  • 423 キー入力不可能な制御文字などを使う

ふりがな

  • 424 ふりがなを表示する/非表示にする・ふりがなを右隣りのセルに表示
  • 425 ふりがなを取得・ふりがなをひらがなで取得・漢字の読みをすべて取得
  • 426 ふりがなを読みの単位で設定/取得
  • 427 ふりがなの種類を取得/設定
  • 428 ふりがなの配置を取得/設定
  • 429 ふりがなのフォントを取得/設定
  • 430 ふりがなを削除

日付・曜日・時刻

  • 431 入力された年月日を日付型に変換
  • 432 入力された年月日から年と月と日を取り出す
  • 433 入力された年月日から曜日を取得
  • 434 入力された月の日数と月初の曜日などを取得
  • 435 指定日数経過後の日付と曜日を取得
  • 436 一定時間間隔経過後の日付を表示
  • 437 残り日数や時間を取得
  • 438 日時から時分秒を取得
  • 439 入力された日時から時刻を含む値を取得

ピボットテーブルレポート

  • 440 ピボットテーブルレポートを準備
  • 441 ピボットテーブルレポートの行フィールドと列フィールドを設定
  • 442 ピボットテーブルレポートのページフィールドを設定
  • 443 ピボットテーブルレポートのデータフィールドを設定
  • <2003以前> 444 ピボットテーブルツールバーの表示/非表示を設定
  • 445 ピボットテーブルフィールドリストの表示/非表示を設定
  • 446 ピボットテーブルのフィールド名をすべて取得
  • 447 ピボットテーブルレポートの数を取得
  • <2010用> 448 ピボットテーブルレポートのスライサーを表示する/非表示にする
  • <2010用> 449 ピボットテーブルのフィールド項目をスライサーで選択・スライサーでの絞り込みをクリア
  • 450 ページフィールドに表示項目を設定・ページフィールドに表示中の項目を取得
  • 451 ピボットテーブルレポートを選択
  • 452 ピボットテーブルレポートをコピー
  • 453 ピボットテーブルレポートのセルアドレスを取得
  • 454 行見出しを選択・行見出しと列ごとの合計と横計を選択
  • 455 列見出しを選択・列見出しと行ごとの合計と縦計を選択
  • 456 列見出しを着色
  • 457 ページフィールドとデータフィールドを選択・データフィールドの見出しを選択
  • 458 行見出しで氏名を指定して行フィールドを表示
  • 459 行見出しと列見出しで氏名と車番を指定してデータを取得
  • 460 指定されたフィールドのすべての行または列を表示
  • <2007以降> 461 ピボットテーブルレポートでカラースケールを表示・条件付き書式のルールをクリア
  • 462 ピボットテーブルレポートを更新
  • 463 最終更新日を取得・最後に更新したユーザーの名前を取得

アウトライン

  • 464 リストに集計(アウトライン)を作成/削除
  • 465 アウトラインされたリストの集計行を塗りつぶす
  • 466 アウトラインされたリストの集計行と総計行の表示を指定
  • 467 アウトライン記号を非表示にする/表示する

並べ替え-リスト

  • <2007以降> 468 ワークシートのデータをセルの値で並べ替え
  • <2007以降> 469 ワークシートのデータをセルの塗りつぶしの色で並べ替え
  • <2007以降> 470 ワークシートのデータをセルのフォントの色で並べ替え
  • <2007以降> 471 ワークシートのデータをセルのアイコンで並べ替え
  • <2007以降> 472 ワークシートのデータを独自の順序で並べ替え
  • <2003仕様> 473 ワークシートのデータをセルの値で並べ替え・並べ替えキーと順序を変数で指定して並べ替え
  • <2003仕様> 474 ワークシートのデータを列単位で並べ替え
  • <2003仕様> 475 並べ替えダイアログボックスを表示
  • <2003仕様> 476 ハイフンで結ばれた数字を並べ替え
  • <2007以降> 477 オートフィルターしたデータをセルの値で並べ替え
  • <2007以降> 478 オートフィルターしたデータをセルの塗りつぶしの色で並べ替え
  • <2007以降> 479 オートフィルターしたデータをセルのフォントの色で並べ替え
  • <2003仕様> 480 オートフィルターしたデータをセルの値で並べ替え

並べ替え-テーブル

  • <2007以降> 481 テーブルのデータをセルの値で並べ替え

並べ替え-リストオブジェクト

  • <2003以降> 482 リストオブジェクトのデータをセルの値で並べ替え

第9章 グラフ

グラフ作成

  • 483 グラフシートを挿入・既存のグラフシートがあれば削除
  • 484 グラフシートにグラフを作成
  • 485 グラフシートを挿入してグラフを作成
  • 486 グラフシートの背景にグラフィックスを設定/削除
  • 487 ワークシートに埋め込みグラフを作成
  • 488 埋め込みグラフを指定セルの左上角に配置
  • 489 埋め込みグラフの左上端と右下端にあるセルを取得
  • 490 グラフの種類を設定/取得
  • 491 埋め込みグラフ/すべての埋め込みグラフの名前を取得
  • 492 グラフの選択状態を解除

凡例

  • 493 凡例を非表示にする/表示する
  • 494 凡例の表示位置をグラフの下/右に設定
  • 495 凡例のフォントを設定

グラフエリア

  • 496 グラフシートのグラフエリアを選択・埋め込みグラフをアクティブにする
  • 497 グラフシートのグラフエリア/埋め込みグラフのサイズを取得
  • 498 埋め込みグラフのサイズを拡大縮小する
  • 499 グラフエリアの色を変更
  • 500 グラフエリアの書式設定を初期化

グラフタイトル

  • 501 グラフタイトルをクリアする/表示する
  • 502 グラフタイトルの輪郭と色を設定
  • 503 グラフタイトルのフォントを設定
  • 504 グラフタイトルの配置を取得/設定

プロットエリア

  • 505 プロットエリアを選択
  • 506 プロットエリアのサイズを取得
  • 507 プロットエリアの幅/高さを変更
  • 508 プロットエリアの色を変更
  • 509 プロットエリアの色を微妙な色に設定
  • 510 プロットエリアにグラデーションを設定
  • 511 プロットエリアにテクスチャを設定
  • 512 プロットエリアに図を設定

項目軸と数値軸

  • 513 項目軸の目盛の種類を設定
  • 514 項目軸を反転する
  • 515 数値軸の目盛の種類を設定
  • 516 数値軸の目盛線を設定
  • 517 数値軸の補助目盛線を設定
  • 518 数値軸を反転する
  • 519 数値軸ラベルを縦書きにする
  • 520 数値軸ラベルをテキストボックスで作成
  • 521 第3データ系列を折れ線グラフに変えて第2軸に設定

データ系列と要素

  • 522 データ系列を選択
  • 523 系列単位でグラフの種類を変更して複合グラフにする
  • 524 データ系列の塗りつぶしの色と線の色を変更
  • 525 マーカーの色とスタイルを設定/取得
  • 526 データ系列とデータ要素を指定して色を変える
  • 527 縦棒グラフの棒の間隔を狭めて棒を太くする・棒の間隔を取得
  • 528 積み上げ縦棒グラフの区分線を表示する/非表示にする
  • 529 折れ線グラフの空白セルのプロット方法を設定

データラベル

  • 530 データラベルを指定したデータ系列に設定・データ系列1のデータラベルを削除
  • 531 データラベルをすべてのデータ系列に設定/削除
  • 532 データラベルに系列名と値を改行して表示

データテーブル

  • 533 データテーブルを表示
  • 534 データテーブルの罫線を設定

カスタマイズ

  • 535 グラフシートのグラフをカスタマイズ
  • 536 グラフシートのグラフをワークシートへ移動
  • <2003以前> 537 パレート図を作成
  • 538 円グラフで1位と2位以下を対比させる
  • 539 三次元グラフの書式を設定
  • 540 グラフをPNG画像/GIF画像としてエクスポート

ピボットグラフレポート

  • 541 ピボットグラフレポートを作成
  • 542 ピボットグラフレポートでフィルターする
  • 543 ピポットグラフレポートの種類を変更
  • 544 ピポットグラフレポートの項目を変更
  • 545 ピポットグラフレポートを移動

スパークライン

  • <2010用> 546 スパークラインを挿入/クリア
  • <2010用> 547 スパークラインの種類を設定
  • <2010用> 548 スパークラインの色を設定/標準に設定
  • <2010用> 549 スパークラインにマーカーを表示して色を設定/マーカーを非表示にする

ガントチャート

  • 550 オートシェイプでガントチャート風に作図する

データバー

  • 551 文字記号でデータバー風に作図する

第10章 図形

図形の挿入

  • 552 セルにオートシェイプを挿入
  • 553 セルに画像を挿入
  • 554 画像入りコメントをセルに挿入
  • 555 図形を複製して左上端をセルに合わせる
  • 556 画像のサイズを取得・画像の大きさを取得/設定
  • 557 画像の大きさをセルのサイズと同じにする
  • 558 スクリーンショットをワークシートに貼り付ける
  • 559 直線を挿入
  • 560 波線を挿入
  • 561 地名と地名の間に二重線を引く

オートシェイプ

  • 562 オートシェイプを挿入
  • 563 オートシェイプの塗りつぶしの色を設定

ワードアート

  • 564 ワードアートを挿入・ワードアートを連続して表示
  • 565 ワードアートでテロップを作る
  • 566 文字列をワードアートにして見る

図表

  • <2003以前> 567 ピラミッド型図表を挿入/削除・図表ツールバーと図形描画ツールバーを非表示にする
  • <2003以前> 568 ドーナツ型図表を挿入/削除
  • <2010用> 569 スマートアートを挿入/削除

図形の名前・選択

  • 570 図形の名前を取得/取得してリスティング・すべての図形の名前を順に取得して表示
  • 571 特定の図形を選択
  • 572 すべての図形を選択・すべての描画オブジェクトを選択
  • 573 すべての図形からテキストボックスを見つける
  • 574 選択されている図形の種類を取得してリスティングする
  • 575 すべての図形/指定した図形だけをグループ化・グループ化を解除

図形の表示

  • 576 図形を指定セルの左上隅に接するように移動
  • 577 グラデーションをプレビュー
  • 578 テクスチャをプレビュー
  • 579 すべての図形/指定した図形を非表示にする/表示する
  • 580 指定した図形/すべての図形を削除

第11章 ユーザーフォーム

ユーザーフォーム

  • 581 ユーザーフォームを表示/モードレスで表示
  • 582 セルが選択されたときにユーザーフォームを表示
  • 583 ユーザーフォームの背景色/境界線色を設定・ラベル/コマンドボタンの背景色/文字の色を設定
  • 584 ユーザーフォームの背景にピクチャを設定/削除・ピクチャの位置を左上/右下に設定・ピクチャを並べて表示・ピクチャを引き伸ばしに設定
  • 585 ユーザーフォームのマウスポインターの形状を設定
  • 586 ユーザーフォームの右上角の[×]ボタンを無効にする
  • 587 コントロール間のフォーカス移動を制御
  • 588 コントロールチップテキストを設定

ラベル

  • 589 ラベルの表示/非表示を設定
  • 590 文字列を設定して表示・サイズを表示内容の大きさに合わせて自動調整
  • 591 コンマ編集した値を表示

テキストボックス

  • 592 初期表示する文字列を設定
  • 593 所定文字数が入力されたら自動的にフォーカスを移動
  • 594 フォーカスを取得できないようにする
  • 595 フォーカス取得時に文字列を選択状態にする
  • 596 入力された値を選択状態にする
  • 597 入力された値が数字か調べる・入力された値が数値として評価できるか調べる
  • 598 入力された値を通貨表示にする
  • 599 入力された値をパスワード文字で表示・パスワード文字を解除
  • 600 入力された値の合計を計算
  • 601 入力された文字列のフリガナを取得
  • 602 入力値の左側に選択余白を設ける
  • 603 複数行入力の可否を設定・Enterキーの動作を設定
  • 604 入力可能な文字数を設定
  • 605 入力された日付の妥当性をチェック
  • 606 入力された日付をオートフィルターのキーにする
  • 607 入力されたかチェック
  • 608 テキストボックスの値をDBシートへ直接入力する

テキストボックス・コンボボックス

  • 609 入力可能な最大文字数を設定
  • 610 入力された全角数字を半角に置換
  • 611 IMEのモードを設定

コンボボックス

  • 612 編集領域への入力可否を設定
  • 613 1文字目一致で入力候補を表示
  • 614 頭文字一致で入力候補を表示

コンボボックス・リストボックス

  • 615 リストをセット
  • 616 リストにセルの値をセット
  • 617 複数列のリストにセルの値をセット
  • 618 リストのフォントを大きくする
  • 619 選択された値を取得
  • 620 複数列のリストの選択された値を取得
  • 621 リストの選択状態を解除

リストボックス

  • 622 選択されたリストを削除
  • 623 複数選択を可能にして選択された値を取得
  • 624 複数のリストボックスを連動させる

チェックボックス

  • 625 選択結果を取得
  • 626 クリックとすぐに実行する

チェックボックス・オプションボタン

  • 627 一挙にオフにする

オプションボタン

  • 628 選択結果を取得

トグルボタン

  • 629 選択結果を取得
  • 630 トグルボタンに画像を表示

フレーム

  • 631 ピクチャを表示してクリックされたらホームページを表示
  • 632 ピクチャの縦横比を維持して拡大

コマンドボタン

  • 633 キャプション/コントロールチップテキスト/背景色/文字の色を設定
  • 634 図を挿入してデザインする
  • 635 有効/無効を設定する
  • 636 フォーカスを取得するかどうか設定

タブストリップ

  • 637 タブの表示位置を設定
  • 638 タブのキャプションを設定/取得

マルチページ

  • 639 色を設定
  • 640 選択されたページのキャプションを取得

スクロールバー

  • 641 スクロールバーコントロールの最小値と最大値を設定・値を取得

スピンボタン

  • 642 スピンボタンの値を取得して表示・最小値と最大値を設定
  • 643 スピンボタンとテキストボックスを連動させる・スピンボタンの増減値を設定

イメージ

  • 644 イメージへ画像を読み込む・イメージを表示する/非表示にする

RefEdit

  • <2003以降> 645 RefEditコントロールで入力されたセル範囲を取得

カレンダー

  • <2003以前> 646 カレンダーコントロールで日付を入力

WebBrowser

  • 647 WebBrowserコントロールでホームページを表示

プログレスバー

  • 648 進捗状況を表示

スライダー

  • 649 スライダーコントロールで値を取得

ListView

  • 650 ListViewコントロールで表示

第12章 プログラミング

知らせる

  • 651 メッセージボックスで知らせる
  • 652 メッセージボックス内で改行・メッセージボックス内をタブで揃える
  • 653 ユーザーフォームで知らせる
  • 654 案内メッセージを表示するための入力規則を設定
  • 655 エラーメッセージを表示するための入力規則を設定
  • 656 文字列を読み上げる・セルの内容を読み上げる
  • 657 サウンドデータを再生・Beep音を鳴らす
  • 658 進捗状況をステータスバーに表示
  • 659 進捗状況を案内画面に表示
  • 660 進捗状況をワークシートのプログレスバーで表示

質問する

  • 661 メッセージボックスで質問する
  • 662 ユーザーフォームで質問する

インプットボックス

  • 663 インプットボックスを表示
  • 664 インプットボックスで入力
  • 665 インプットボックスのメッセージを複数行で表示
  • 666 セル範囲入力用のインプットボックスを表示
  • 667 IMEをオンにしてインプットボックスを表示
  • 668 初期値を表示したインプットボックスを表示
  • 669 インプットボックスへ入力されたか判定する
  • 670 インプットボックスの入力値が数値である文字列か判定する
  • 671 インプットボックスの入力値が日付型データか判定する

データフォーム

  • 672 データフォームで入力
  • 673 多項目データフォームもどきで入力

フロー制御

  • 674 For...Next文で繰り返し処理
  • 675 For...Next文をアルファベット列名で書く
  • 676 For...Next文をネストする
  • 677 条件を満たしている間繰り返し処理
  • 678 条件を満たすまで繰り返し処理
  • 679 アクティブセル領域で1字でも一致するセルに着色する
  • 680 得点によって評価マークを設定
  • 681 条件を満たすかどうかで処理を分岐
  • 682 複数の条件を順に判定して分岐
  • 683 組み合わせた複数条件で処理を分岐
  • 684 マクロの実行を指定した行ラベルへジャンプさせる
  • 685 ほかのブックのマクロを実行

イベントプロシージャ

  • 686 イベントの発生を制御
  • 687 ブックが開かれたときに自動的に実行されるマクロ
  • 688 ブックが閉じられるときに自動的に実行されるマクロ
  • 689  セルがダブルクリックされたときに○×をセットする
  • 690 値が変更されたらセルのアドレスと変更前後の値を取得
  • 691 セルが選択されたらドロップダウンリストを表示
  • 692 選択されたセル範囲をウィンドウの左上隅に表示
  • 693 再計算されたときに列幅を調節
  • 694 ピボットテーブルレポートが更新されたら売上金額を取得
  • 695 ハイパーリンクがクリックされたときにリンク先を取得
  • 696 印刷日時などをフッターに自動設定

自動運転

  • 697 Excelの起動と同時にマクロを実行
  • 698 指定時間経過後に別のマクロを実行するように設定
  • 699 指定時刻にマクロを実行するように設定する/設定を取り消す
  • 700 実行中のマクロを一時停止/当日の指定時刻まで停止
  • 701 実行中のマクロをミリ秒単位で停止
  • 702 処理時間をミリ秒単位で取得
  • 703 一定時間間隔でマクロを実行

エラー対策

  • 704 予期せぬエラーへ対策/対策を解除
  • 705 ありえないはずの実行時エラーに対策
  • 706 エラーチェックオプションを有効/無効にする
  • 707 ISERR関数でエラー対策した数式をセルにセットする
  • 708 領域内のエラーセルを検出
  • 709 文字列用の列内にある数値セルを検出

配列

  • 710 配列を宣言して使ってみる
  • 711 配列の要素数を求める
  • 712 配列のインデックス番号を1からにする
  • 713 セルの値を配列に格納・配列の値をセルにセット

著者プロフィール

永井善王(ながいよしおう)

システム・エンジニア,テクニカル・ライター。愛知県幸田町在住,1942年1月神戸市生。

コンピュータ・経理・経営企画・大手自動車メーカーでのSE業務支援等に携わって定年退職,現在はハッピーテック代表。この間一貫してシステム開発に携わり,ユーザーと開発者の両方の視点を持っている。 代表作の「総債権管理システム」は,自動車販売時における顧客との債権債務を一元化して管理でき,伝統的な記帳制度から大胆に発想を転換して利便性・正確性を向上し省力化した。生来,新しいもの好きでクリエーター。最近は執筆活動の傍らホームページでのQA,ハーレー・ダビットソンでのアメリカ大陸走行。地元では青少年健全育成地域推進員委員長を務めている。

【ホームページ】
800連発・500連発・組み方講座フォローページ
すぐに役立つエクセルVBAマクロ集

著書