Excel VBA入門
Excel でこれから VBA を使ってみたいという方を対象にした VBA 入門です。 VBA とは Visual Basic for Applications の略で Excel や Access などで利用できるプログラミング言語の1つです。 VBA を使うことで手動で行っている定型的な業務などを自動化させたり、独自のフォームなどを作成して Excel をアプリケーションのように見せることなどができます。ここでは Excel での VBA の使い方についてサンプルを使いながら解説していきます。
※ Excel でマクロを記録する方法などについては「Excelマクロ入門」を参照されてください。
(Last modified: )
- Excel VBA関数の使い方
- Abs関数:数値の絶対値を取得する
- Array関数:指定したデータを要素に持つ配列を作成する
- Asc関数:文字の文字コードを取得する
- AscB関数:文字のバイトコードを取得する
- AscW関数:文字のUnicodeコードポイントを取得する
- Atn関数:アークタンジェント(逆正接)を取得する
- Choose関数:複数の値の中から指定のインデックスの値を取得する
- Chr関数:文字コードから文字を取得する
- ChrB関数:文字のバイトコードから文字を取得する
- ChrW関数:文字のUnicodeコードポイントから文字を取得する
- Cos関数:コサイン(余弦)を取得する
- CStr関数:値を文字列に変換する
- CVErr関数:指定のエラー番号のエラー値を作成する
- Date関数:現在のシステム日付を取得する
- DateSerial関数:年、月、日を指定して日付の値を取得する
- DateValue関数:日付を表す文字列から日付の値を取得する
- Day関数:日付の値から日の値を取得する
- Exp関数:e(自然対数の底)のべき乗を取得する
- Fix関数:数値の整数部分を取得する
- Format関数:数値や日付に書式を設定し文字列として取得する
- Hex関数:数値を16進数に変換し文字列として取得する
- Hour関数:時刻の値から時間の値を取得する
- InStr関数:文字列の先頭から指定の文字列を検索し文字位置を返す
- InStrB関数:文字列の先頭から指定の文字列を検索しバイト位置を返す
- InStrRev関数:文字列の末尾から指定の文字列を検索し文字位置を返す
- Int関数:数値の整数部分を取得する
- IsArray関数:変数が配列かどうかを確認する
- IsDate関数:値が日付や時刻を表しているかどうかを確認する
- IsEmpty関数:Variant型の変数が初期化されているかどうかを確認する
- IsError関数:セルの値や式がエラー値かどうかを確認する
- IsMissing関数:プロシージャのオプションの引数に値が指定されたかどうかを確認する
- IsNull関数:値がNullかどうかを確認する
- IsNumeric関数:値が数値を表しているかどうかを確認する
- IsObject関数:変数がオブジェクトを表しているかどうかを確認する
- LBound関数:配列の最小インデックスを取得する
- LCase関数:文字列の中の大文字を小文字に変換する
- Left関数:文字列の左から指定の文字数分だけ文字列を取得する
- LeftB関数:文字列の左から指定のバイト数分だけ文字列を取得する
- Log関数:自然対数を取得する
- Mid関数:文字列の指定した位置から指定の文字数分だけ文字列を取得する
- MidB関数:文字列の指定した位置から指定のバイト数分だけ文字列を取得する
- Minute関数:時刻の値から分の値を取得する
- Month関数:日付の値から月の値を取得する
- Oct関数:数値を8進数に変換し文字列として取得する
- Replace関数:文字列の中の指定した部分文字列を別の文字列に置換する
- RGB関数:色を表す数値を取得する
- Right関数:文字列の右から指定の文字数分だけ文字列を取得する
- RightB関数:文字列の右から指定のバイト数分だけ文字列を取得する
- Rnd関数:乱数を生成する
- Round関数:数値を四捨五入する
- Second関数:時刻の値から秒の値を取得する
- Sgn関数:数値の符号を表す値を取得する
- Sin関数:サイン(正弦)を取得する
- Split関数:文字列を指定の区切り文字で分割し配列の要素に格納する
- Sqr関数:数値の平方根を取得する
- Str関数:数値を文字列に変換する
- StrComp関数:文字列と文字列を比較する
- StrConv関数:文字列で大文字小文字や全角半角の変換などを行う
- String関数:文字を指定した回数繰り返した文字列を作成する
- StrReverse関数:文字列の文字の並び順を逆にした文字列を作成する
- Switch関数:複数の条件式と値のペアの中でTrueになった条件式の値を取得する
- Tan関数:タンジェント(正接)を取得する
- Time関数:現在のシステム時間を取得する
- TimeSerial関数:時、分、秒を指定して時刻の値を取得する
- TimeValue関数:時刻を表す文字列から時刻の値を取得する
- Trim,LTrim,RTrim関数:文字列の先頭または末尾から空白を削除する
- TypeName関数:変数のデータ型の名前を取得する
- UBound関数:配列の最大インデックスを取得する
- UCase関数:文字列の中の小文字を大文字に変換する
- Val関数:文字列の中の数値の部分を数値として取得する
- VarType関数:変数のデータ型を調べる
- Weekday関数:日付の値から曜日を取得する
- WeekdayName関数:曜日を表す数値から曜日名を取得する
- Year関数:日付の値から年の値を取得する
- VBAで円周率を取得する方法
- ユーザーフォームの使い方
- 新しいユーザーフォームを作成する
- ユーザーフォームを別ファイルに保存する
- ユーザーフォームを削除する
- ツールボックスの表示と非表示を切り替える
- コントロール
- ユーザーフォームにコントロールを設置する
- コントロールのコピーと削除
- 複数のコントロールの位置や間隔を揃える
- 複数のコントロールのサイズを揃える
- コントロールのサイズを必要サイズに合わせる
- ユーザーフォームにおけるグリッドに関する設定を行う
- 複数のコントロールをグループ化する
- コントロールの重なる順番を変更する
- コントロールのタブオーダーを設定する
- プロパティ
- プロパティウィンドウを使ってプロパティの値を変更する
- コントロールのオブジェクト名を変更する
- コントロールに表示される文字列を設定する(Captionプロパティ)
- コントロールの文字色と背景色を設定する(ForeColor,BackColorプロパティ)
- コントロールの背景を透明に設定する(BackStyleプロパティ)
- コントロールのフォントを設定する(Fontプロパティ)
- コントロールの位置を設定する(Top,Leftプロパティ)
- コントロールのサイズ(幅と高さ)を設定する(Width,Heightプロパティ)
- コントロールの枠線を設定する(BorderStyle,BorderColorプロパティ)
- コントロールの境界部分を立体的に表示する(SpecialEffectプロパティ)
- コントロールを非表示に設定する(Visibleプロパティ)
- コントロールを無効に設定する(Enabledプロパティ)
- コントロールを編集不可に設定する(Lockedプロパティ)
- コントロールの文字列の水平方向の揃え方を設定する(TextAlignプロパティ)
- コントロールのサイズを自動調整する(AutoSizeプロパティ)
- コントロールにツールチップを表示する(ControlTipTextプロパティ)
- コントロール内のテキストを行末で折り返すか設定する(WordWrapプロパティ)
- コントロールでスクロールバーを表示するか設定する(ScrollBarsプロパティ)
- コントロールにアクセスキーを設定する(Acceleratorプロパティ)
- コントロールに表示する画像を設定する(Pictureプロパティ)
- コントロールのタブオーダーを設定する(TabIndex,TabStopプロパティ)
- コントロールの状態を表す値を取得する(Valueプロパティ)
- コントロール毎のマウスポインターを設定する(MousePointer,MouseIconプロパティ)
- コントロールとキャプションの位置関係を設定する(Alignmentプロパティ)
- テキストボックス内のテキストを取得または設定する(Textプロパティ)
- テキストボックスの日本語入力方式(IME)を設定する(IMEModeプロパティ)
- テキストボックスに入力できる最大文字数を設定する(MaxLengthプロパティ)
- テキストボックスに最大文字数を入力したあと自動的に次のコントロールに移動するか設定する(AutoTabプロパティ)
- テキストボックスで代わりに表示する伏字を設定する(PasswordCharプロパティ)
- テキストボックスで複数行の入力を許可する(MultiLineプロパティ)
- テキストボックスでTABキーの動作を変更する(TabKeyBehaviorプロパティ)
- テキストボックスでENTERキーの動作を変更する(EnterKeyBehaviorプロパティ)
- コマンドボタンを既定のボタンに設定する(Defaultプロパティ)
- コマンドボタンをキャンセルボタンに設定する(Cancelプロパティ)
- オプションボタンをグループ化する(GroupNameプロパティ)
- ユーザーフォームを表示する位置を設定する(StartUpPosition,Top,Leftプロパティ)
- ユーザーフォームやコントロールのプロパティで色を設定する方法
- イベント処理
- イベント処理を行うイベントプロシージャを作成する
- ユーザーフォームを表示する直前に発生するイベント(Initializeイベント)
- ユーザーフォームが閉じる直前に発生するイベント(QueryCloseイベント)
- ユーザーフォームが閉じたあとに発生するイベント(Terminateイベント)
- コントロール上でクリックしたときに発生するイベント(Clickイベント)
- コントロール上でダブルクリックしたときに発生するイベント(DblClickイベント)
- コントロールの値が変化したときに発生するイベント(Changeイベント)
- コントロールの上でマウスが動いたときに発生するイベント(MouseMoveイベント)
- コントロールでマウスボタンを押したときと離したときに発生するイベント(MouseDown,MouseUpイベント)
- 他からフォーカスを受け取る前と他にフォーカスが移動する前に発生するイベント(Enter,Exitイベント)
- コントロールでキーを押したり離したりしたときに発生するイベント(KeyDown,KeyUp,KeyPressイベント)
- VBAからユーザーフォームを利用する
- ユーザーフォームを表示する(Load文,Showメソッド)
- ユーザーフォームを閉じる(Unload文)
- ユーザーフォームを非表示にする(Hideメソッド)
- ワークシートに設置したコマンドボタンからマクロを呼び出す
- VBAでのユーザーフォームの使い方とプロパティおよびイベント
- VBAでのラベル(Label)の使い方とプロパティおよびイベント
- VBAでのテキストボックス(TextBox)の使い方とプロパティおよびイベント
- VBAでのコマンドボタン(CommandButton)の使い方とプロパティおよびイベント
- VBAでのイメージ(Image)の使い方とプロパティおよびイベント
- VBAでのチェックボックス(CheckBox)の使い方とプロパティおよびイベント
- VBAでのトグルボタン(ToggleButton)の使い方とプロパティおよびイベント
- VBAでのオプションボタン(OptionButton)の使い方とプロパティおよびイベント
- VBAでのリストボックス(ListBox)の使い方とプロパティおよびイベント
- VBAを使ったリストボックスの作成と項目の追加および削除
- VBAを使ってリストボックスで選択された項目を取得する
- リストボックスの項目のソースとしてワークシートに入力したデータを利用する
- VBAでのコンボボックス(ComboBox)の使い方とプロパティおよびイベント
- VBAを使ったコンボボックスの作成と項目の追加および削除
- VBAを使ってコンボボックスで選択された項目や入力された値を取得する
- コンボボックスの項目のソースとしてワークシートに入力したデータを利用する
- VBAでのフレーム(Frame)の使い方とプロパティおよびイベント
- VBAでのタブストリップ(TabStrip)の使い方とプロパティおよびイベント
- タブストリップでタブを切り替えたときの処理を記述する
- VBAでのマルチページ(MultiPage)の使い方とプロパティおよびイベント
- VBAでのスクロールバー(ScrollBar)の使い方とプロパティおよびイベント
- VBAでのスピンボタン(SpinButton)の使い方とプロパティおよびイベント
- VBAでのRefEditの使い方とプロパティおよびイベント
- ユーザーフォームやフレームに動的にコントロールを追加する(Addメソッド)
( Written by Tatsuo Ikura )
Profile
著者 / TATSUO IKURA
プログラミングや開発環境構築の解説サイトを運営しています。