Vba で eomonth を使用する方法 (例付き)


VBA でEoMonthメソッドを使用すると、指定された日付の月の最終日を返すことができます。

このメソッドを実際に使用する一般的な方法は次のとおりです。

 Sub LastDayOfMonth()

Dim i As Integer

For i = 2 To 11
    Range(" C " & i).Value = Application.WorksheetFunction.EoMonth(Range(" A " & i), 0)
    Range(" C " & i).NumberFormat = " m/d/yyyy "
Next i

End Sub

この特定のマクロは、範囲A2:A11内の各日付の月の最終日を検索し、範囲C2:C11内の対応するセルにその日付を表示します。

次の例は、この構文を実際に使用する方法を示しています。

例: VBA で EoMonth を使用する方法

ある企業がさまざまな日付で行った売上に関する情報を含む次のデータ セットが Excel にあるとします。

A 列の各日付の月の最終日を検索し、C 列に表示するとします。

これを行うには、次のマクロを作成できます。

 Sub LastDayOfMonth()

Dim i As Integer

For i = 2 To 11
    Range(" C " & i).Value = Application.WorksheetFunction.EoMonth(Range(" A " & i), 0)
    Range(" C " & i).NumberFormat = " m/d/yyyy "
Next i

End Sub

このマクロを実行すると、次の出力が表示されます。

列 C には、列 A の対応する各日付の月の最終日が含まれることに注意してください。

Excel の既定の形式であるシリアル番号ではなく、列 C に認識可能な日付形式で日付値を表示するためにNumberFormatプロパティを使用したことに注意してください。

また、 EoMonthメソッドの最後の引数は、月の最終日を計算するときに使用する前後の月数を指定することにも注意してください。

この例では、値0を使用して、現在の月の最後の日を検索することを指定しました。

ただし、代わりに、値-1を使用して前月の最終日を検索することを指定したり、値1を使用して翌月の最終日を検索することを指定したりできます。

: VBA のEoMonthメソッドの完全なドキュメントは、ここで見つけることができます。

追加リソース

次のチュートリアルでは、VBA で他の一般的なタスクを実行する方法について説明します。

VBA で日付を比較する方法
VBAで文字列を日付に変換する方法
VBA で 2 つの日付の間の日数を計算する方法

コメントを追加する

メールアドレスが公開されることはありません。 が付いている欄は必須項目です