このサイトの記事内では「アフィリエイト広告」などの広告を掲載している場合があります。
消費者庁が問題としている「誇大な宣伝や表現」とならないよう配慮しコンテンツを制作しておりますのでご安心ください。
問題のある表現が見つかりましたらお問い合わせよりご一報いただけますと幸いです。

【VBA】配列を逆順にする方法

2024年6月14日

今回はVBAで配列を逆順にする方法を紹介します。
(例えば1,2,3,...という配列を...3,2,1という並びに変換する)

VBAにはこうした逆順にする関数などが存在しないため、自分で関数を作成する必要があります。

私が作成した関数を紹介するので活用してみてください。

VBAが難しいと感じたら
プロにお任せして代わりに作ってもらうのはいかがでしょうか?
マクロの作成請負をしていますので、こちらからご相談ください。

配列を逆順にする関数

Function GetReversedArr(arr As Variant) As Variant
    '''arrを逆順にした配列を返す
    
    Dim rtn()
    ReDim rtn(LBound(arr) To UBound(arr))
    
    Dim one, i As Long
    i = UBound(arr)
    For Each one In arr
        rtn(i) = one
        i = i - 1
    Next
    
    GetReversedArr = rtn
End Function

配列を逆順にする関数はこのGetReversedArrです。

配列arrを引数として渡すと、逆順にした配列を返します。

Sub UseSample()
    
    Dim arr
    arr = Array("a", "ab", "abc", "abcd", "abcde")
    arr = GetReversedArr(arr)
    
    Dim one
    For Each one In arr
        Debug.Print one
    Next
End Sub

関数の簡単な使用例も作成したので、配列がどのように変換されているか確認してみてください。

VBAが難しいと感じたら
プロにお任せして代わりに作ってもらうのはいかがでしょうか?
マクロの作成請負をしていますので、こちらからご相談ください。

VBA

Posted by やろまい