私は勘違いをしていました。いえ、確かな根拠を調べずに「できないに違いない」と思いこんでいたのかもしれません。
今までずっと、VBAから.NET Frameworkを使うことはできないと思っていたのですが、実はできたんですね。知りませんでした。
たとえば、.NET Frameworkには「System.Collections名前空間のArrayListクラス」というクラスがあります。
ArrayListクラスに関する詳細は、MSDNの下記ページをご覧ください。
■ArrayList クラス (System.Collections)
このArrayListクラスを使って、配列を操作してみましょう。次のコードは、.NET FrameworkのArrayListクラスを利用して、ランダムな数値を配列に格納します。さらに、配列のソートや複製の作成、配列の逆順などを行います。
Sub Sample1() Dim DataList, myData, i As Long, buf As String Set DataList = CreateObject("System.Collections.ArrayList") ''.NET Frameworkへの参照 For i = 1 To 5 DataList.Add Int(Rnd() * 10000) ''5個の乱数を配列にセットする Next i DataList.Sort ''配列をソートする Set myData = DataList.Clone ''配列の複製を作る For i = 0 To myData.Count - 1 buf = buf & myData(i) & vbCrLf Next i buf = buf & "------" & vbCrLf DataList.Reverse ''配列を逆順にする For i = 0 To DataList.Count - 1 buf = buf & DataList(i) & vbCrLf Next i MsgBox buf Set myData = Nothing Set DataList = Nothing End Sub
言うまでもありませんが、.NET Frameworkを使うには.NET Frameworkがインストールされていなければなりません。
また、.NET Frameworkの全ての機能を使えるわけではないようです。