【Excelマクロ】パターン別!データの探し方(Find・ループ・InStr)
Excel VBAでデータを扱うとき、「特定の値を探す」処理は非常に頻繁に登場します。たとえば、取引先名を探してその行の情報を取得したり、請求番号を検索して処理を行ったりと、実務でも欠かせない操作です。 VBAでデータを […]
Excel VBAでデータを扱うとき、「特定の値を探す」処理は非常に頻繁に登場します。たとえば、取引先名を探してその行の情報を取得したり、請求番号を検索して処理を行ったりと、実務でも欠かせない操作です。 VBAでデータを […]
VBAコードは「数ヶ月後の自分」や「引き継ぎを受けた後任者」が読むことを前提に書くべきです。変数名・コメント・インデント・Sub分割の4つを意識するだけで、同じ処理でも読みやすさが大きく変わります。 この記事では、次の内
VBAで同じ値を何度も使うなら、Const(定数)として名前をつけて一か所で管理するのがベストです。税率・シート名・列番号など「途中で変えてはいけない値」を定数にしておくと、変更時に一か所直すだけで済み、コードの意図も読
VBAで複数の条件をチェックする処理は、Flag変数(Boolean型)を使うとIf文のネストを避けてスッキリ書けます。「すべて満たしたらOK」「1つでもNGならストップ」という判断ロジックを、1つの変数にまとめることで
VBAでオブジェクト(Worksheet・Range・Workbookなど)を変数に代入するときは、必ず Set を使う必要があります。Setを忘れると「オブジェクトが必要です(エラー424)」が発生します。なぜSetが
VBAのオブジェクト変数とは、シート・セル範囲・ブックなど「Excelの中のモノ」を一時的に格納しておく変数です。Dim ws As Worksheet と宣言し、Set ws = Worksheets(“集計”) で代
VBAの SpecialCells を使うと、「値が入っているセルだけ」「空白セルだけ」「エラーのあるセルだけ」といった条件に合うセルをまとめて取得できます。全セルをループしなくて済むため、コードがシンプルになり処理も速
VBAのIfネスト(入れ子)が深くなったら、「条件を先にふるい落とす」か「And条件でまとめる」の2つで解消できます。どちらも数行の修正で対応でき、コードが読みやすく・直しやすくなります。 この記事では、次の内容を順番に
VBAの変数には「型」があり、Dim name As String のように使うデータの種類を宣言します。型を宣言するとエラーを早期に発見でき、コードも読みやすくなります。型を宣言しない場合は自動的に Variant 型