VBA樹林– category –
-
【VBA入門】セルのメモ内容を更新する方法|コメントがある場合のみ上書きする処理
Excelでは、セルに対して**「メモ(旧コメント)」を挿入し、後からその内容を更新することができます。VBAを使えば、既にメモが存在するかを判定し、必要に応じて内容を書き換える処理**を実装することが可能です。 この記事では、メモがある場合にのみそ... -
【VBA入門】セルにメモ(コメント)を追加する方法|AddCommentの使い方と注意点
Excelには、セルに「メモ(旧コメント)」を追加できる機能があります。VBAを使用すれば、セルに対して自動的にメモを挿入する処理を簡単に実装できます。 本記事では、AddCommentメソッドを使った基本的な使い方と、既にメモが存在するかどうかの判定方法... -
【VBA入門】稼働日数を取得する方法|NETWORKDAYS.INTL関数で休日・土日を除外する
業務において、「○日後」ではなく「営業日で何日後か」を知りたい場面は多くあります。たとえば、プロジェクトの所要日数を土日祝を除いてカウントしたい場合など、Excel VBA では WorksheetFunction.NetworkDays_Intl 関数を使えば柔軟に対応可能です。 ... -
【VBA入門】日付に指定書式を適用して文字列として取得する方法|Format関数の使い方
Excel VBAでは、日付データに対して独自の書式を適用し、整形済みの文字列として扱うことが可能です。帳票作成やファイル名生成、ログ記録などの場面では、「yyyy/mm/dd」「和暦」「曜日付き」などの形式に変換する処理がよく使われます。 この記事では、F... -
【VBA入門】10日後・3か月後の日付を求める|DateAdd関数の使い方と応用例
Excel VBAでは、指定した日付に対して「10日後」や「3か月後」などの日付計算を簡単に行うことができます。こうした日付の加算・減算は、納期の自動計算やスケジュール管理など、実務において非常に頻繁に登場する処理です。 この記事では、DateAdd 関数を... -
【VBA入門】月の最終日を取得する方法|DateSerial関数を使った日付処理
Excel VBAで日付処理を行う際、「指定された月の最終日」を取得したい場面は多くあります。たとえば、月末で処理を締める帳票作成や、月初から月末までの範囲指定などがその代表例です。 本記事では、DateSerial 関数を用いて「ある日付が属する月の最終日... -
【VBA入門】時・分・秒から時刻を作成する方法|TimeSerialとTimeValueの違いと使い方
Excel VBAでは、「時・分・秒」それぞれの値をもとに、正確な時刻(Time型)を構築することが可能です。この記事では、TimeSerial 関数と TimeValue 関数を用いた時刻作成方法の基本と違いを、丁寧にご紹介いたします。 方法①:TimeSerial関数で時刻を作成... -
【VBA入門】年・月・日から日付を作成する方法|DateSerial関数の使い方
Excel VBAでは、ユーザーが入力した「年」「月」「日」それぞれの数値をもとに、正確な**日付値(Date型)**を構築することができます。特に、フォームや入力表で年月日を分けて入力させる場面では、この処理が不可欠です。 本記事では、DateSerial 関数を... -
【VBA入門】セルのシリアル値を取得する方法|ValueとValue2の違いを理解しよう
Excelでは、日付や時刻は見た目上は「2025/7/20」などの形式で表示されますが、内部的には「シリアル値(連続した数値)」で管理されています。この「シリアル値」をVBAで取得することで、日付の大小比較や計算処理が正確かつ効率的に行えるようになります... -
【VBA入門】数式が参照しているセル範囲を取得する方法|Precedentsプロパティの基本
Excel VBAを活用すると、セルに入力された数式がどのセルを参照しているのかを自動で取得・操作することが可能です。特に複雑な表や関数を含むブックでは、数式の参照元セルを調べる作業が不可欠です。 本記事では、VBAの Precedents プロパティを使って、... -
【VBA入門】数式がエラーかどうかを判定する方法|HasFormulaとIsErrorの組み合わせ活用術
Excelでは、計算式(数式)を入力した際に、意図しないエラー(例:#DIV/0! や #VALUE!)が表示されることがあります。VBAで処理を自動化する際、こうしたエラーが存在するかを事前に判定しておくことは極めて重要です。 この記事では、セルに入力されてい... -
【VBA入門】セルに数式が入力されているかどうかを判定する方法|HasFormulaとHasArrayの使い分け
Excel VBAを使って作業を自動化する際、セルに数式が入力されているかどうかを事前に確認したい場面はよくあります。とくに、通常の数式と配列数式のどちらが設定されているかを判別できれば、より柔軟な処理分岐が可能になります。 本記事では、HasFormul... -
【VBA入門】セルの値ではなく数式を取得する方法|Formulaプロパティの使い方
Excel VBAを使用してセルの内容を取得する際、通常は .Value プロパティで計算結果を取得します。しかし、セルに関数や数式が設定されている場合、「実際に入力されている数式そのもの」を取得したいことがあります。 この記事では、VBAでセルの数式を取得... -
【VBA入門】セルに配列数式を入力する方法|FormulaArrayの使い方と注意点
Excel VBAでは、通常の数式と同様に、**配列数式(CSE数式)**もプログラムからセルに入力することが可能です。配列数式とは、複数の値に対して一括で演算処理を行い、結果を1つのセルや複数セルに出力する特殊な数式のことを指します。 この記事では、VBA... -
【VBA入門】セルの値が日付かどうかを判定する方法|IsDate関数の使い方と注意点
Excel VBAでは、セルに入力された値が「日付」かどうかを判定したい場面があります。たとえば、入力フォームで日付の妥当性をチェックしたり、カレンダー処理や集計処理で日付としての整合性を確認したりする際に活用されます。 この記事では、VBAの IsDat... -
【VBA】セルが数値かどうかを判定する方法|IsNumeric関数で数値チェック
Excel VBAで表の値を扱う際、「そのセルに数値が入力されているかどうか」を確認したい場面はよくあります。たとえば、数値計算を行う前に、数値以外の入力を排除したい場合などです。 この記事では、VBAの IsNumeric 関数を使って、セルの値が数値かどう... -
【VBA】セルが空白かどうかを判定する3つの方法|IsEmpty・Len・比較演算子の使い分け
Excel VBAでは、セルが空白かどうかをチェックする処理が非常によく使われます。たとえば、「入力漏れを検出したい」「データが存在するかどうかで処理を分岐したい」といった場面で活躍します。 この記事では、VBAでセルが空白かどうかを判定する3つの代... -
【VBA入門】セルや範囲に値を代入する方法|.Valueプロパティの基本と使い方
Excel VBAでは、セルやセル範囲に対して直接値を入力(代入)することができます。フォームの初期表示やデータ処理の一環として、決まったセルに値を書き込む処理は非常によく使われます。 この記事では、Range オブジェクトの .Value プロパティを用いて... -
【VBA】アクティブでないシート上のセル範囲に移動・選択する方法|Application.GoToの活用
Excel VBAでセル範囲を選択する処理を書く際に、「別シート上のセルへ移動・選択したい」というケースは少なくありません。しかしながら、Range(...).Select はアクティブなシートにしか使用できないため、シートをまたいだ選択ではエラーになります。 こ... -
【VBA】特定のセルを画面左上にスクロール表示させる方法|ScrollRowとScrollColumnの使い方
Excelで作業をしていると、特定のセルを画面の左上にぴったり表示したいという場面があります。たとえば、「データ一覧の途中行へ瞬時に移動し、そこを基点に作業したい」といったケースです。 そのようなときに便利なのが、VBAの ScrollRow と ScrollColu... -
【VBA】スクロール可能な表示エリアを制限・解除する方法|ScrollAreaの使い方
Excelでは、ユーザーが操作できるセル範囲を制限したい場面があります。たとえば、誤入力を防ぎたいときや、帳票テンプレートのレイアウトを固定したいときなどです。 そのようなときに便利なのが、VBAで使用できる ScrollArea プロパティです。このプロパ... -
【VBA】現在ウィンドウ内に表示されているセル範囲を取得する方法|VisibleRangeの活用
Excelでマクロを作成しているときに、画面上に見えている範囲だけを対象に処理したいと感じたことはありませんか?そのようなときに役立つのが、ActiveWindow.VisibleRange プロパティです。 このプロパティを使うことで、現在のウィンドウ上に表示されて... -
【VBA】非表示の行または列が存在するかをチェックする方法|SpecialCellsとAreasの活用
Excelで業務データを扱っていると、行や列を非表示にしていることに気づかず処理に支障が出ることがあります。そのため、マクロで非表示の行または列が存在するかどうかを事前に確認する処理を入れておくと非常に便利です。 この記事では、SpecialCells(xl... -
【VBA】表示されているセル範囲だけを抽出して処理する方法|フィルターや非表示行を除外して操作
Excelでは、オートフィルターや手動での非表示処理などにより、一部のセルが表示されていない状態になることがあります。そのような場合、見えているセルだけを対象に処理を行いたいというニーズは非常に多くあります。 VBAでは SpecialCells(xlCellTypeVi... -
【VBA】1行分のセル範囲を対象に処理を行う方法|行単位での書式変更・範囲取得の基本
Excel VBAでマクロを作成する際、「1行分のデータ」を単位として処理したい場面は非常に多くあります。たとえば、見出し行を太字にする、データが入力されている範囲だけを対象に処理する、などのケースです。 本記事では、特定の行を範囲として選び、書式... -
【VBA】セルを検索して見つかった位置の情報を取得・操作する方法|Find関数の基本と活用
Excel VBAでデータを自動処理する際、特定の文字列を含むセルを検索し、そのセルに対して処理を行いたいという場面は非常に多くあります。このような場合、Find 関数を使うことで、目的のセルを効率的に探し出し、関連するデータの取得や更新が簡単に実現... -
【VBA】離れた複数のセル範囲(エリア)を個別に処理する方法|Selection.Areasの使い方
Excelでセルを複数選択するとき、Ctrlキーを押しながら離れた場所にある複数のセル範囲を選択できます。このような**「複数のエリア」**をVBAで処理する場合は、Selection.Areas を使用することで、エリアごとに個別の処理を行うことが可能です。 本記事で... -
【VBA】2つのセル範囲の重なり合う部分(共通範囲)を取得する方法|Intersect関数の使い方
VBAで複数のセル範囲を操作する際、「2つの範囲が重なっているかどうかを判定したい」というケースがあります。このような場面では、Intersect 関数を使うことで、重なっている部分(共通範囲)だけを抽出することが可能です。 本記事では、Intersect を使... -
【VBA】複数のセル範囲を結合して一括操作する方法|Union関数の使い方
VBAを使って複数のセル範囲に対して同じ処理を一度に行いたいとき、個別に繰り返すのは手間がかかります。このような場面では、Union 関数を使って複数のセル範囲を一つの集合として扱うことで、より簡潔に効率的な処理が可能になります。 本記事では、異... -
【VBA】結合セルかどうかを判定して、結合範囲を取得する方法|MergeCellsとMergeAreaの活用
Excelで作成された表には、複数のセルが結合されている箇所がよくあります。VBAでこれらを操作する際には、「そのセルが結合されているか」「結合範囲全体を取得できるか」を正しく判定・制御することが重要です。 本記事では、VBAでセルが結合されている...