国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 辦公 > Excel > 正文

VBA數組學習筆記(三)

2024-08-23 19:48:29
字體:
來源:轉載
供稿:網友

3.5,數組的排序

字符串數組不能用Large(Arr,i) 或者 Small(Arr,i) 來排序;

但數值數組可以;

一個很好的字典+數組排序的實例:

Sub yy1()

‘by:oobird


Dim i%, c As Range, x, d As Object

Set d = CreateObject("Scripting.Dictionary")

For Each c In Sheet2.UsedRange

    If c.Value <> "" Then

        If Not d.exists(c.Value) Then

            d.Add c.Value, 1

        Else

            d(c.Value) = d(c.Value) + 1

        End If

    End If

Next

    k = d.keys: t = d.items    'k是各個不重復值,t是各個不重復值的個數

    ReDim x(1 To 2, 1 To d.Count)

For i = 1 To d.Count

    x(2, i) = application.Large(k, i)   ‘從大到小排序

    x(1, i) = d(x(2, i))

Next i

With Sheet1

    .[b2].Resize(2, i - 1) = x

    ReDim x(1 To 2, 1 To d.Count)

    For i = 1 To d.Count

        x(1, i) = Application.Max(t)   ‘從大到小排序

        w = Application.Match(x(1, i), t, 0) – 1    ‘查找此值在不重復值系列中的排位,因為w是從0開始的,所以-1


        x(2, i) = k(w)    ‘求得對應的不重復值

        t(w) = ""     ‘使前面的最大值為空,繼續循環

    Next i

    .[b5].Resize(2, i - 1) = x    ‘兩行一起賦值給B5開始的單元格

End With

End Sub

字符串數組的排序,可以使用輔助列,把數組各元素依次賦給單元格,然后對這些單元格運用Excel自有的數據排序功能進行排序,再把單元格排過序的值重新賦給數組。

3.6,數組賦給單元格區域

r=Ubound(Arr) r為一維數組的上限;

Range("a2").Resize(1, r) = Arr '填充到工作表的一行之中(Arr為一維數組)

或者寫成 Range("a2").Resize(1, Ubound(Arr)) = Arr

 

二維數組Arr(100,5)

Range(“a1”).Resize(100,5)=Arr

[a1:e100]=Arr

或者寫成 Range("a1").Resize(Ubound(Arr,1), Ubound(Arr,2)) = Arr

 


賦值方面的補充:

Sub y()
Dim arr
arr = [mmult(row(1:100),column(a:f))]
[a1].Resize(100, 6) = arr
End Sub


Sub yy()
Dim arr
arr = [column(a:z)^3]
MsgBox Join(arr, ",")
arr = [transpose(row(1:222))]
MsgBox Join(arr, ",")
End Sub


Sub yyy()
Dim arr
arr = Split("a b c d e f g")
MsgBox Join(arr, ",")
End Sub


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 灵石县| 凤山县| 乾安县| 平罗县| 正宁县| 山阳县| 漳浦县| 祥云县| 绥德县| 中宁县| 罗江县| 长沙县| 太康县| 乌鲁木齐县| 崇州市| 宁乡县| 磴口县| 贵定县| 台前县| 额敏县| 大兴区| 芦山县| 衢州市| 永年县| 叙永县| 紫阳县| 准格尔旗| 高雄县| 高清| 天长市| 绥芬河市| 普陀区| 察哈| 梓潼县| 韶关市| 旌德县| 海盐县| 资兴市| 通州区| 河曲县| 寿光市|