VBA プログラミング辞典

VBA の基本
論理演算子 (And, Or, Not, Xor, Imp, Eqv) Debug.Print
引数付きでマクロを呼び出します
罫線を引きます
変数と配列処理
変数の宣言 変数のデータ型を調べます
ブール型変数 整数型/長整数型変数 単精度/倍精度浮動小数点数型変数
通貨型変数 日付型変数 文字列型変数 オブジェクト型変数
Do Until Loop/Do Loop Until による繰り返し処理
Do While Loop/Do Loop While による繰り返し処理
静的配列 動的配列
引数に配列を渡します
配列を昇順/降順に並べ替えます
指定した値を文字列型に変換します
ユーザー定義型変数 InputBoxメソッド/InputBox関数
ブックとシートの操作
セルの操作
セルの選択 セルの値を取得/セルに値を入力 セルの相対参照
セル範囲の行と列を数えます 行や列の表示/非表示を切り替えます
セル範囲の座標とサイズの取得 データの最終行を選択します
セルの背景色を設定します 簡単アニメーション
見出しの書式を整えます ブロック崩し?
日付と時刻
現在の日付と時刻の取得 曜日の取得 日付を加えます 処理速度の計測
指定時刻にマクロを起動します
文字列の操作
MsgBox 関数でメッセージを表示します
文字列同士、文字列と数値を結合します
Join関数を使って配列要素を結合します
改行
同じ文字を繰り返します
Split関数で文字列を区切り文字で分割します
大文字と小文字の変換
指定した方法で文字列を変換
Val関数で文字列から数値を取り出します
文字列を検索して別の文字列に置き換えます
Text モードで文字列を比較します
文字コードと文字列の変換
左側から文字を切り出す(Left)
右側から文字を切り出す(Right)
指定範囲の文字を切り出す(Mid)
文字数の取得
端のスペースを消します 氏名から名字と名前を取り出します
住所から都道府県名を取り出します
特定の文字で囲まれた言葉を抜き出します
無作為なパスワードを返すユーザー定義関数
文章を1文字ずつバラバラにして配列に入れます
ユーザー定義関数
オートシェイプ(図形)の操作
矢印を引きます 円を作ってジグザグアニメーション♪ 図形を回転させます
図形を拡大・縮小させます
無作為選択に関するマクロ
抽選マクロ(1列に並んだデータから無作為にデータを抜き出します)
複数データを重複せずにランダムに抜き出します
住所の番地をランダムに出力します
なんとなく楽しいマクロ♪
サイトを運営している人におすすめマクロです
Option Base 1 はモジュールに1つで十分です
このサイトに載っている VBA マクロには、Sub の前に Option Base 1 という宣言文がついていることがあります。これは配列のインデックス番号の下限値を(通常なら 0 のところを)1 で始まるようにする宣言です。これはモジュールの1番上に1つだけ書いておけば十分ですから、1つの標準モジュールにいくつもサブルーチンをコピーするときには余分な Option Base 1 は消しておいてください。
目的ごとに複数の選択肢を提供します
Excel である種の操作をオートマティックに処理させようとしたとき、ほとんどのケースで複数の解決策があります。大まかに分けると ……
① ワークシート関数で処理する
② VBA のマクロで処理する
の2択になりますが、細かな点まで突き詰めると、それぞれの場合において、さらにいくつかの選択肢が生じます。このサイトでは、ユーザーさんの好みやスキルに応じて自由に選択できるように、可能な限り複数の解決策を提供していく予定です。
Excel 関数と VBA コードを色分けします
Excel 関数と VBA 関数はよく似た表記(Rand と Rnd など)が多く、混乱しやすいです。そこで当サイトでは、ぱっと見てそれが Excel 関数 なのか VBA コードなのか分かるように、それぞれに色を割り当てて網掛けしておきます:
Excel 関数
VBA コード
ユーザー定義関数単体、あるいはExcel 関数とユーザー定義関数の組合せ
ユーザー定義関数を数多く提供します
VBA には Function Macro (ユーザー定義関数)という大変便利な機能が用意されています。標準モジュールに Function Macro を記述しておけば、 ワークシート上で「=fct() 」というように、あたかも Excel 関数のような形で呼び出すことができます。 Excel を使いこなしている人は Excel 関数を自由自在に組み合わせてお仕事の効率を追及なさっていると思いますが、この Function Macro を新たな材料に加えることで、その組み合わせの種類を次々と増やしていくことができます。さらなる高い次元で Excel を使うなら、このユーザー定義関数を使わない手はありません。当サイトに乗っているコードをコピーすれば、VBA に関する知識は一切なくてもワークシート上で使うことができるようになります。思いつく限りの関数を作っておきますので、「お、これは!?」と目に留まる関数があればぜひお持ち帰りくださいな。