前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >ExcelVBA字典的输出

ExcelVBA字典的输出

作者头像
哆哆Excel
发布2022-10-31 15:45:05
8430
发布2022-10-31 15:45:05
举报
文章被收录于专栏:哆哆Excel
代码语言:javascript
复制
'练习字典的输出看代码吧
Sub 字典输出()

    Dim dic As Object, arr()

    Set dic = CreateObject("scripting.dictionary")

    ReDim arr(10)

    'key是一个数字,item是一个一维数组,

    For M = 1 To 10

        For i = 0 To UBound(arr)

            arr(i) = "k" & M & "--" & i

        Next i

        dic("key" & M) = arr

    Next M

    With Sheets("字典输出")

        .range("B2").Resize(100, 50).ClearContents

        .range("A12:A30").ClearContents

        '第1种输出:表中已有key,先读取单元格的数据,再匹配字典,输出item

        For i = 2 To 11 '.range("A2").End(xlDown).Row

            '        .Cells(Rows.count, 1).End(xlUp).Row

            s = .Cells(i, 1).Value

            If dic.exists(s) Then

                s_arr = dic(s)

                .Cells(i, 2).Resize(1, UBound(s_arr) + 1).NumberFormatLocal = "@"

                .Cells(i, 2).Resize(1, UBound(s_arr) + 1) = dic(s)

            End If

        Next i

        '第2种输出,指定P2单元格输出keys,指定Q2,输出items数组,

        'keys,一次Transpose再输出,items用Application.Rept(数组,1)也可以用两次Transpose再输出

        ks = dic.keys()

        Tems = dic.items()

        c = UBound(Application.Transpose(Tems), 2)

        MsgBox "准备输出,共几行:" & c

        .range("P2").Resize(dic.Count, 1) = Application.Transpose(ks)

        '        .range("Q2").Resize(dic.count, c + 1) = Application.Transpose(Application.Transpose(Tems))

        .range("Q2").Resize(dic.Count, c + 1) = Application.Rept(Tems, 1)

        MsgBox "准备第3种输出"

        '第3种输出,循环dic.count-1,读出dic.keys()(k),还有dic.items()(k)

        For k = 0 To dic.Count - 1

            .Cells(12 + k, 1) = dic.keys()(k)

            .Cells(12 + k, 2).Resize(1, 11) = dic.items()(k)

        Next k

    End With

End Sub

Image
Image
Image
Image
Image
Image
本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2022-09-13,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 哆哆Excel 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档