ExcelVBA

【ExcelVBA・マクロ】Range.Sortメソッド完全ガイド|複数キーでの並べ替えを自動化する方法【コピペOK】

Range.SortメソッドとはExcelでデータを並べ替える操作は、手動なら「データ」タブの「並べ替え」機能で行いますが、VBAからはRangeオブジェクトのSortメソッドを使うことで自動化できます。Range.Sortは、単一キーでの...
ExcelVBA

【ExcelVBA・マクロ】ReDim Preserveの使い方|動的配列のサイズを実行時に変更する方法【コピペOK】

ReDim PreserveとはVBAで配列を使うとき、「最初は要素数が分からないけれど、処理を進める中で必要な数が分かってくる」という場面はよくあります。このようなときに使うのがReDimステートメントとReDim Preserveステー...
ExcelVBA

【ExcelVBA・マクロ】Openステートメントの使い方|テキストファイルの読み込み・書き込みを完全解説【コピペOK】

OpenステートメントとはExcelVBAでちょっとしたログファイルを残したい、CSVやテキストファイルの中身を1行ずつ読み込みたい——そんなとき、外部ライブラリを使わずに標準機能だけで完結できるのがOpenステートメントです。FileSy...
ExcelVBA

【ExcelVBA・マクロ】Debug.Printとイミディエイトウィンドウの使い方|デバッグの基本を完全解説【コピペOK】

Debug.PrintとイミディエイトウィンドウとはVBAでマクロを作っていると、「変数に想定通りの値が入っているか確認したい」「処理が想定通りの順番で動いているか見たい」という場面がよくあります。そんなときにMsgBoxをいちいち挟んで確...
ExcelVBA

【ExcelVBA・マクロ】PasteSpecial(形式を選択して貼り付け)完全ガイド|値のみ・書式のみ・演算貼り付けまで解説【コピペOK】

PasteSpecial(形式を選択して貼り付け)とはセルをコピーして貼り付けるとき、「数式ではなく計算結果の値だけ貼り付けたい」「罫線や色などの書式だけコピーしたい」といった場面はよくあります。手作業なら「形式を選択して貼り付け」ダイアロ...
ExcelVBA

【ExcelVBA・マクロ】Nameオブジェクトの使い方|名前付き範囲の作成・参照・削除を完全解説【コピペOK】

NameオブジェクトとはExcelには「名前付き範囲(名前の定義)」という機能があります。Range("A1:A10")のようなセル番地の代わりに、「売上リスト」のような分かりやすい名前でセル範囲を参照できる機能です。数式を作るときはもちろ...
ExcelVBA

【ExcelVBA・マクロ】Application.OnTimeの使い方|指定した時刻や一定間隔でマクロを自動実行する方法【コピペOK】

Application.OnTimeとはApplication.OnTimeは、指定した時刻や一定時間後に、任意のマクロを自動で実行できるVBAのメソッドです。「毎日決まった時刻にデータを更新したい」「一定間隔でステータスを自動保存したい」...
ExcelVBA

【ExcelVBA・マクロ】Enum(列挙型)の使い方|マジックナンバーをなくして読みやすいコードにする方法【コピペOK】

Enum(列挙型)とはVBAでステータスや区分を数値で管理していると、「1が未処理で、2が処理中で、3が完了……」といった意味をコードのあちこちで覚えておかなければならず、コードを読むたびに「この2ってどういう意味だっけ?」と迷ってしまうこ...
ExcelVBA

【ExcelVBA・マクロ】ByValとByRefの違いを完全解説|値渡しと参照渡しで意図しない不具合を防ぐ【コピペOK】

ByVal・ByRefとはVBAでプロシージャ(SubやFunction)に引数を渡すとき、呼び出し元の変数がどう扱われるかを決めるのがByValとByRefです。この指定を正しく理解していないと、「プロシージャを呼んだだけなのに、呼び出し...
ExcelVBA

【ExcelVBA・マクロ】Collectionオブジェクトの使い方|Dictionaryとの違いも解説【コピペOK】

CollectionオブジェクトとはCollectionオブジェクトは、複数のデータをひとまとめにして管理できるVBA標準のオブジェクトです。配列と似ていますが、要素数をあらかじめ決めておく必要がなく、Addメソッドで自由に要素を追加したり...