Excel VBA ○番目に大きい値を取得-LARGE関数

Excel VBA○番目大きい値を取得する記録です。

ワークシート関数の「LARGE」を使います。

< スポンサーリンク >





「LARGE」関数構文

WorksheetFunction.Large(Arg1, Arg2)

1組のデータの中で○番目に大きなデータを返します。この関数を利用すると、相対的な順位に基づいて、データの中から特定の値を選択することができます。

Arg1=必須。範囲。抽出の対象となるデータが入力されているセル範囲または配列を指定します。
Arg2=必須。順位。抽出する値の大きい方から数えた順位を数値で指定します。

 

「LARGE」関数の使用例

B1~B6の中で2番目に大きいデータをメッセージで表示します。

Sub test()
    MsgBox WorksheetFunction.Large(ActiveSheet.Range("B1", "B6"), 2)
End Sub

VBAでlarge関数

VBAでlarge関数

  

B~Dの各列の2~6行目の中で3番目に大きいデータを7行目に入力します。

Sub test()
    Dim ws As Worksheet
    Dim i As Long
    
    '変数にアクティブシートをセット
    Set ws = ActiveSheet
    
    With ws
        'A7に項目名を入力
        .Range("A7").Value = "3番目に大きい"
        
        '2~6行目の中で3番目に大きいデータを7行目に入力
        For i = 2 To 4
            .Cells(7, i).Value = WorksheetFunction.Large(.Range(.Cells(2, i), .Cells(6, i)), 3)
        Next i
    End With
End Sub

VBAでlarge関数

VBAでlarge関数

 

VBAではなく、ワークシートのセルに書き込む場合はこちら
Excel データの中の○番目に大きい値を取得する-LARGE関数

 

< スポンサーリンク >※広告先のお問い合わせは広告主様にお願いします