【エクセルマクロ】変数を比較して最大値を取得:4選

vba-変数を比較して最大値を取得-アイキャッチ ExcelVBA

変数を比較して最大値を取得するExcelVBAコードを記載しています。

このページのマクロコードは、コピペで使えます。
ぜひお試しください!

変数を比較して最大値を取得(変数比較)

以下のマクロを実行すると、2つ以上の変数を比較して最大数を求めます。


Sub 複数変数を比較して一番大きい数値を取得()

Dim a As Long
Dim b As Long
Dim c As Long
Dim Max As Long
Dim i As Long

    '最大値を格納する変数
    Max = 0

    '数値を格納
    a = 10
    b = 20
    c = 30
    
    '比較する配列の個数分ループ
    For i = 1 To 3
    
        If a > Max Then
            Max = a
        ElseIf b > Max Then
            Max = b
        ElseIf c > Max Then
            Max = c
        End If
    Next i
    
    'メッセージボックス表示
    MsgBox "最大値:" & Max

End Sub

 

マクロ実行後

3つの変数の中で一番大きい数値を取得して、

メッセージボックスに表示します。


 
 

変数を比較して最大値を取得(配列比較)

以下のマクロを実行すると、2つ以上の配列を比較して最大数を求めます。


Sub 複数の変数を比較して最大数を取得()

Dim a(2) As Long
Dim Max As Long
Dim i As Long

    '最大値を格納する変数
    Max = 0

    '数値を格納
    a(0) = 10
    a(1) = 20
    a(2) = 30

    '比較する変数の個数分ループ
    For i = LBound(a) To UBound(a)
        If a(i) > Max Then
            Max = a(i)
        End If
    Next i

    'メッセージボックス表示
    MsgBox "最大値:" & Max

End Sub

 

マクロ実行後

3つの配列の中で一番大きい数値を取得して、

メッセージボックスに表示します。


 
 

変数を比較して最大値を取得(WorksheetFunction_変数)

以下のマクロを実行すると、Max関数を使用して最大数を求めます。


Sub 複数の変数を比較して最大数を取得()

Dim a As Long
Dim b As Long
Dim c As Long
Dim Max As Long

    '数値を格納
    a = 10
    b = 20
    c = 30
    
    '最大値を取得
    Max = Application.WorksheetFunction.Max(a, b, c)
    
    'メッセージボックス表示
    MsgBox "最大値:" & Max

End Sub

 

マクロ実行後

[WorksheetFunction.Max] を使用して、

変数の中で1番大きい数値をメッセージボックスに表示します。


 
 

変数を比較して最大値を取得(WorksheetFunction_配列)

以下のマクロを実行すると、配列の中身を比較して最大数を求めます。


Sub 複数の配列を比較して最大数を取得()

Dim a(2) As Long
Dim Max As Long

    '数値を格納
    a(0) = 10
    a(1) = 20
    a(2) = 30

    '最大値を取得
    Max = Application.WorksheetFunction.Max(a)

    'メッセージボックス表示
    MsgBox "最大値:" & Max

End Sub

 

マクロ実行後

[WorksheetFunction.Max] を使用して、

配列の中で1番大きい数値をメッセージボックスに表示します。


 

 
この記事がお役に立ちますと幸いです。
 

【エクセルマクロ】ワークシート処理を自動化する:超便利39選
...

 

「Excel自動化[最強]時短仕事術」
自動化の基礎と時短に役立つテクニック解説書
毎日の定型業務を手際良く行え、大幅な業務効率化を実現!