VBAに関するkobee99のブックマーク (1)

  • VBA 動的配列で要素数を意識せずに拡張する方法 - t-hom’s diary

    動的配列は便利であるが、その扱いは少々面倒くさい。Collectionなら、何番目の要素かを意識せずにAddできるが配列では要素の指定が必須だからである。 そこで、Ubound関数を使って要素数を意識せずに動的に拡張するコードを書いてみた。 別に裏技でも何でもないが、便利なイディオムとして良く利用するので覚えておくと何かと重宝すると思う。 たとえば、以下は選択されているセル範囲を配列に格納するサンプル。 セル範囲だけならVariantで直接格納する方法もあるが、この方法は色々応用が利く。 Sub RedimArraySample() Dim Arr() As String: ReDim Arr(0) 'Index 0で初期化 Dim x As Range For Each x In Selection 'Arrへの格納時に、添え字の数値指定ではなくUboundで最大要素に追加する。 Arr

    VBA 動的配列で要素数を意識せずに拡張する方法 - t-hom’s diary
    kobee99
    kobee99 2016/07/17
    配列
  • 1