Excel VBA の Tips 一覧
はじめに
Excel VBA マクロの Tips を紹介します。
開発する手順や開発環境については「VBA 開発環境の使い方と初期設定」にまとめてあります。
構文やキーワードなどコードについては「VBA 開発入門の基礎まとめ」にまとめてあります。
エクセルについては「エクセル」をご覧ください。
基礎
使い方
- VBA やマクロとは
- VBA 開発入門の基礎まとめ
- VBA 開発環境の使い方と初期設定
- VBA マクロを作成して実行する
- VBA マクロを削除する
- VBA マクロのコードを表示させないようにする
- VBA デバッグの仕方
- VBA 参照設定する
- VBA コードの行番号を表示する
- VBA コードをマウスでスクロールする
- VBA ヘルプを表示する
基礎
- VBA 関数の作成と呼び出し
- VBA 関数に引数を渡す
- VBA 省略可能な引数 Optional と名前付き引数
- VBA 可変長な引数配列 ParamArray
- VBA 変数の宣言や初期化する
- VBA Public や Private 変数のスコープ
- VBA Const 定数を宣言する
- VBA Enum 列挙型を定義する
- VBA 配列を宣言する
- VBA 二次元配列を宣言する
- VBA コメントアウトする
- VBA 変数の型やデータ型の一覧
- VBA 比較演算子や論理演算子
- VBA ビット演算やビットシフトする
- VBA イベントを処理する
- VBA 構造体を定義する
- VBA 標準モジュールの呼び出し
- VBA クラスの使い方
- VBA 値型と参照型の違い
- VBA 変数名などの命名規則
ステートメント
- VBA Do While, Do Loop でループする
- VBA Exit 文で処理を抜ける
- VBA For 文でループする (For Each, For Next)
- VBA GoTo 文でラベルに飛ばす
- VBA If 文で条件分岐する
- VBA Select 文で複数に分岐する
- VBA With 文の使い方
データ型
- VBA 数値を計算する
- VBA 数値を変換する
- VBA 文字列を結合する
- VBA 文字列を改行する
- VBA 文字列を比較する
- VBA 文字列を抽出する
- VBA 文字列を検索する
- VBA 文字列を置換する
- VBA 文字列を変換する
- VBA 文字コードを変換や判定、文字化けを解消する
- VBA 特殊文字と制御文字の一覧
- VBA 日付を入力する
- VBA 日付を計算する
- VBA 日付を比較する
- VBA 日付を変換する
- VBA ブール型を判定する
- VBA オブジェクトを代入や比較する
エラー
- VBA エラー処理をする (On Errer GoTo)
- VBA エラー情報を取得する
- VBA エラー発生時に中断する
- VBA エラー 5 プロシージャの呼び出し、または引数が不正です。
- VBA エラー 6 オーバーフローしました。
- VBA エラー 9 インデックスが有効範囲にありません。
- VBA エラー 13 型が一致しません。
- VBA エラー 52 ファイル名または番号が不正です。
- VBA エラー 53 ファイルが見つかりません。
- VBA エラー 58 既に同名のファイルが存在しています。
- VBA エラー 75 パス名が無効です。
- VBA エラー 76 「パスが見つかりません」になるときの対処法
- VBA エラー 91 オブジェクト変数または With ブロック変数が設定されていません。
- VBA エラー 424 オブジェクトが必要です。
- VBA エラー 438 オブジェクトは、このプロパティまたはメソッドをサポートしていません。
- VBA エラー 449 引数は省略できません。または不正なプロパティを指定しています。
- VBA エラー 450 引数の数が一致していません。または不正なプロパティを指定しています。
- VBA エラー 1004 アプリケーション定義またはオブジェクト定義のエラーです。
- VBA エラー 変数が定義されていません。
- VBA エラー 定数、固定長文字列、配列、ユーザー定義型および Declare ステートメントは、オブジェクト モジュールのパブリック メンバーとしては使用できません。
- VBA エラー オブジェクト モジュール内では、パブリック ユーザー定義型は定義できません。
- VBA エラー プライベート オブジェクト モジュールを、パブリック オブジェクト モジュール内で、パブリック プロシージャの引数または戻り値、パブリック データ メンバー、またはパブリックのユーザー定義型のフィールドとして、使用することはできません。
技術
関数一覧
数値関数
- VBA Abs 関数:絶対値を取得する
- VBA CInt 関数:数値に変換する
- VBA Fix 関数:整数を取得する
- VBA Hex 関数:数値を 16 進数に変換する
- VBA Int 関数:整数を取得する
- VBA IsNumeric 関数:数値に変換できるか判定する
- VBA Rnd 関数:乱数を生成する
- VBA Round 関数:四捨五入や切り捨て、切り上げする
- VBA Val 関数:数字を数値に変換する
文字列関数
- VBA Asc 関数:文字コードを取得する
- VBA Chr 関数:文字コードを文字に変換する
- VBA CStr 関数:文字列に変換する
- VBA Format 関数:書式や形式を指定して文字列に変換する
- VBA FormatDateTime 関数:日付を Windows の形式で文字列に変換する
- VBA Hex 関数:数値を 16 進数に変換する
- VBA InStr 関数:文字列の位置を検索する
- VBA InStrRev 関数:文字列の位置を後ろから検索する
- VBA Join 関数:配列を区切り文字で結合する
- VBA LCase 関数:大文字を小文字に変換する
- VBA Left 関数:文字列の先頭から抽出する
- VBA Len 関数:文字数を取得する
- VBA LTrim 関数:先頭の空白を削除する
- VBA Mid 関数:文字列の途中から抽出する
- VBA Replace 関数:文字列を置換する
- VBA Right 関数:文字列の最後から抽出する
- VBA RTrim 関数:最後の空白を削除する
- VBA Space 関数:スペースで埋める
- VBA StrComp 関数:文字列を比較する
- VBA StrConv 関数:全角と半角を変換する
- VBA String 関数:指定した文字で埋める
- VBA StrReverse 関数:文字列を反転する
- VBA Trim 関数:前後の空白を削除する
- VBA UCase 関数:小文字を大文字に変換する
日付と時刻関数
- VBA CDate 関数:日付に変換する
- VBA Date 関数:今日の日付を取得する
- VBA DateAdd 関数:日付や時間を計算する
- VBA DateDiff 関数:日数を計算する
- VBA DateSerial 関数:年月日から日付を取得する
- VBA DateValue 関数:日時から日付を取得する
- VBA Day 関数:日を取得する
- VBA Hour 関数:時を取得する
- VBA IsDate 関数:日付や時間に変換できるか判定する
- VBA Minute 関数:分を取得する
- VBA Month 関数:月を取得する
- VBA Now 関数:現在の日時を取得する
- VBA Second 関数:秒を取得する
- VBA Time 関数:現在の時間を取得する
- VBA Timer 関数:経過時間を取得する
- VBA TimeSerial 関数:時分秒から時間を取得する
- VBA TimeValue 関数:日時から時間を取得する
- VBA Weekday 関数:曜日を取得する
- VBA WeekdayName 関数:曜日名を取得する
- VBA Year 関数:年を取得する
データ型関数
- VBA Asc 関数:文字コードを取得する
- VBA CBool 関数:Boolean 型に変換する
- VBA CDate 関数:日付に変換する
- VBA Chr 関数:文字コードを文字に変換する
- VBA CInt 関数:数値に変換する
- VBA CStr 関数:文字列に変換する
- VBA IsArray 関数:配列かどうかを判定する
- VBA IsDate 関数:日付や時間に変換できるか判定する
- VBA IsEmpty 関数:Variant が初期化されているか判定する
- VBA IsNull 関数:Null かどうかを判定する
- VBA IsNumeric 関数:数値に変換できるか判定する
- VBA IsObject 関数:オブジェクトかどうかを判定する
- VBA TypeName 関数:型名を取得する
- VBA Val 関数:数字を数値に変換する
- VBA VarType 関数:型を示す値を取得する
配列関数
- VBA Array 関数:配列を作成する
- VBA Filter 関数:配列を絞り込む
- VBA IsArray 関数:配列かどうかを判定する
- VBA Join 関数:配列を区切り文字で結合する
- VBA LBound 関数:配列の最小インデックスを取得する
- VBA Split 関数:文字列を分割して配列にする
- VBA UBound 関数:配列の最大インデックスを取得する
エラー関数
ファイル関数
その他関数
- VBA Choose 関数:リストから選択した値を取得する
- VBA CreateObject 関数:オブジェクトをインスタンス化する
- VBA DoEvents 関数:応答なしを回避する
- VBA Environ 関数:環境変数を取得する
- VBA InputBox 関数:画面に入力した値を取得する
- VBA MsgBox 関数:メッセージボックスを表示する
- VBA RGB 関数:色を取得する
- VBA Shell 関数:exe を実行する
エクセル関数
セル
セルの値
- VBA セルの値を取得する (Range.Value)
- VBA セルに値を入力する (Range.Value)
- VBA セルの関数や数式を取得する (Range.Formula)
- VBA セルに関数や数式を入力する (Range.Formula)
- VBA セルをクリアする (Range.Clear)
書式設定
- VBA セルの色を取得する (Interior.Color, ColorIndex)
- VBA セルに色を設定する (Interior.Color, ColorIndex)
- VBA セルの色をクリアする (Interior.ColorIndex)
- VBA セルの罫線について
- VBA セルの罫線を取得する (Range.Borders)
- VBA セルに罫線を引く (Range.Borders)
- VBA セルの罫線をクリアする
- VBA セルの表示形式を取得する (Range.NumberFormatLocal)
- VBA セルに表示形式を設定する (Range.NumberFormatLocal)
- VBA セルの書式設定を取得または設定する
- VBA セルの書式をコピーする (Range.Copy)
- VBA セルの書式をクリアする (Range.ClearFormats)
- VBA セルの条件付き書式を取得する (Range.FormatConditions)
- VBA セルに条件付き書式を設定する (Range.FormatConditions)
セルの操作
- VBA セルを範囲指定して取得する (Range, Cells)
- VBA セルの位置を取得する (Range.Address)
- VBA セルを選択する (Range.Select, Selection)
- VBA セルをコピーする (Range.Copy)
- VBA セルを挿入する (Range.Insert)
- VBA セルを削除する (Range.Delete)
- VBA セルを移動する (Range.Cut)
- VBA セルを結合する (Range.Marge)
- VBA セルを置換する (Range.Replace)
- VBA セルを検索する (Range.Find)
- VBA セルを複数条件で検索する
- VBA セルの並び替え、ソートする (Range.Sort)
行
- VBA 行を取得する
- VBA 最終行を取得する
- VBA 行番号や行数を取得する
- VBA 行を選択する
- VBA 行をコピーして貼り付ける
- VBA 行を挿入する
- VBA 行を削除する
- VBA 行をクリアする
- VBA 行を非表示にする
- VBA 行の高さを調整する
列
- VBA 列を取得する
- VBA 最終列を取得する
- VBA 列番号または列名を取得する
- VBA 列を選択する
- VBA 列をコピーして貼り付ける
- VBA 列を挿入する
- VBA 列を削除する
- VBA 列をクリアする
- VBA 列を非表示にする
- VBA 列の幅を調整する
ワークシート
- VBA シートを取得する
- VBA シート名を取得または変更する
- VBA シートを選択またはアクティブにする
- VBA シートを追加する
- VBA シートを削除する
- VBA シートをコピーする
- VBA シートを移動する
- VBA シートを非表示にする
- VBA シートを保護する
- VBA シートの存在確認をする
ワークブック
ファイル
ファイル
- VBA FileSystemObject ファイル操作の基礎
- VBA FileSystemObject の関数とプロパティの一覧
- VBA ファイルの読み込み
- VBA ファイルの書き込み
- VBA ファイルの作成
- VBA ファイルの削除
- VBA ファイルのコピー
- VBA ファイルの移動
- VBA ファイルの存在確認
- VBA ファイルの一覧を取得
- VBA ファイル名の取得または変更
- VBA ファイルの読み取り専用などの属性を取得または変更する
- VBA ファイルの作成日時や更新日時を取得または変更する
- VBA CSV ファイルの読み込み (QueryTables.Add 関数を使う)
- VBA CSV ファイルの読み込み (Workbooks.OpenText 関数を使う)
- VBA CSV ファイルの書き込みと保存
フォルダ
- VBA フォルダの作成
- VBA フォルダの削除
- VBA フォルダのコピー
- VBA フォルダの移動
- VBA フォルダの存在確認
- VBA フォルダの一覧を取得
- VBA フォルダ名の取得または変更する
- VBA フォルダの隠しフォルダなどの属性を取得または変更する
- VBA フォルダの作成日時や更新日時を取得または変更する