【用語集に記載の内容について】

用語集に記載されているメソッドや関数の引数は、VBAエキスパート試験の試験範囲に基づいており、すべての引数を網羅しておりません。 また、書式は公式テキストの記載に準じています。
試験範囲外の引数や詳細については、ヘルプ機能やオブジェクトブラウザーをご参照ください。

【コードをコピーして実行する場合の注意】

文字コードの関係上、半角の「¥」は「/」で表示されるため、当サイトでは全角の「¥」で記載しています。当サイトのコードをコピーして実行する場合は、全角の「¥」を半角の「¥」に変換してください。

LARGE関数(ワークシート関数)

名称LARGE関数(ワークシート関数)
説明
指定したセル範囲のデータから、n番目に大きい値を返すワークシート関数です。
書式
WorksheetFunction.Large(セル範囲, n)

セル範囲:数値のセル範囲を指定
n:何番目に大きい値を取得するかを数値で指定
コード例①
【1番目に大きい値と3番目に大きい値を取得】
Sub Macro1()
    Dim num As Long
    
    num = WorksheetFunction.Large(Range("A1:A5"), 1)
    MsgBox "1番目に大きい値:" & num
    
    num = WorksheetFunction.Large(Range("A1:A5"), 3)
    MsgBox "3番目に大きい値:" & num
End Sub

LARGE関数で、アクティブシートのセル範囲A1:A5の1番目に大きい値と3番目に大きい値を取得し、メッセージボックスに表示します。

マクロを実行すると、アクティブシートのセルの値が以下の場合、以下のメッセージボックスが順に表示されます。
「1番目に大きい値:50」
「3番目に大きい値:30」
A
1 10
2 20
3 30
4 40
5 50
コード例②
【LARGE関数とMAX関数】
Sub Macro2()
    Dim num As Long
    
    'LARGE関数
    num = WorksheetFunction.Large(Range("A1:A5"), 1)
    MsgBox "一番目に大きい値:" & num
    
    'MAX関数
    num = WorksheetFunction.Max(Range("A1:A5"))
    MsgBox "最大値:" & num
End Sub

LARGE関数で、アクティブシートのセル範囲A1:A5の1番目に大きい値を取得し、メッセージボックスに表示します。

MAX関数で、アクティブシートのセル範囲A1:A5の最大値を取得し、メッセージボックスに表示します。

どちらも取得する値は同じです。

マクロを実行すると、アクティブシートのセルの値が以下の場合、以下のメッセージボックスが順に表示されます。
「1番目に大きい値:50」
「最大値:50」
A
1 10
2 20
3 30
4 40
5 50
カテゴリスタンダード