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

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

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

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

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

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

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

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

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

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

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

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

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