亚洲国产日韩人妖另类,久久只有这里有精品热久久,依依成人精品视频在线观看,免费国产午夜视频在线

      
      

        動態(tài)數(shù)組示例

        動態(tài)數(shù)組示例

        之前向大家展示過利用靜態(tài)數(shù)組提取特定行內(nèi)容例子,現(xiàn)例舉利用動態(tài)數(shù)組進行提取特定行的例子,但該方法相對較難理解,大家感興趣可以看看。

        例如上圖,現(xiàn)需要提取A列中內(nèi)容為“d”的整行內(nèi)容,代碼如下:

        Sub 動態(tài)數(shù)組示例()

        Dim arr, arr1() ‘此處還不確定arr1中數(shù)組的大小,在后面確定之后會重新定義

        arr = Range(“a2:d10”)

        For x = 1 To UBound(arr)

        If arr(x, 1) = “d” Then

        k = k + 1

        ReDim arr1(1 To 4, 1 To k) ‘注意此處“redim”只能在列方向定義動態(tài)變量,所以arr中數(shù)組是橫向的,arr1中數(shù)組是縱向的,最后要將行列轉(zhuǎn)置一下

        arr1(1, k) = arr(x, 1)

        arr1(2, k) = arr(x, 2)

        arr1(3, k) = arr(x, 3)

        arr1(4, k) = arr(x, 4)

        End If

        Next x

        Range(“e1”).Resize(k, 4) = Application.Transpose(arr1) ‘此處就是將行列轉(zhuǎn)置的代碼

        End Sub

        上述代碼標紅字段表示將arr數(shù)組中的內(nèi)容重新賦值給新的數(shù)組arr1,但會發(fā)現(xiàn),arr數(shù)組和arr1中數(shù)組內(nèi)容是行列顛倒的,那是因為“preserve”只能定義列方向的動態(tài)變量。

        arr中符合條件的內(nèi)容如下,是一個三行四列的數(shù)組:

        然后紅色代碼將arr中的數(shù)組內(nèi)容賦值給arr1,其內(nèi)容如下:

        很清楚地看到兩個數(shù)組是行列顛倒的,所以最后需要將arr1中的行列再轉(zhuǎn)換回來,就需要用到“transpose”,如上述代碼黃色代碼所示。最后代碼運行結(jié)果如下:

        該方法用來提取特定行有點兒難以理解,但可以提高大家的VBA中對動態(tài)數(shù)組的概念及使用方法,大家可以看看喔

        鄭重聲明:本文內(nèi)容及圖片均整理自互聯(lián)網(wǎng),不代表本站立場,版權(quán)歸原作者所有,如有侵權(quán)請聯(lián)系管理員(admin#wlmqw.com)刪除。
        上一篇 2022年6月23日 12:11
        下一篇 2022年6月23日 12:11

        相關推薦

        聯(lián)系我們

        聯(lián)系郵箱:admin#wlmqw.com
        工作時間:周一至周五,10:30-18:30,節(jié)假日休息