美文网首页
39、[VBA入门到放弃笔记]字典:ehome彭版的字典精简版教

39、[VBA入门到放弃笔记]字典:ehome彭版的字典精简版教

作者: 叶知行 | 来源:发表于2017-07-03 08:49 被阅读30次

    当年我向LDY版主求教字典的时候,他老人家总结了一句话“呼之即来,挥之即去”
    即学会d(a)=s 和 s=d(a) 就差不多了,忘记ADD存在。

    一、定义字典
    Set d = CreateObject("Scripting.Dictionary")

    二、呼之即来,挥之即去

    d("张三“)=1 '相当于给字典赋值,张三过来(没有就生成)拿个1站一边去
    d("李四”)=2 '相当于给字典赋值,李四过来(没有就生成)拿个2站一边去
    d("李四”)=3 '相当于改变值,字典中已经有李四了,李四跑过来,丢下2换个3站一边去
    注:这时字典中有两个人的存在,张三=1 和 李四=3,相当于实现了去重复的功能

    s=d("张三") 's=1 即叫了声张三,张三就告诉你他拿的是1
    s=d("李四") 's=3 即叫了声李四,李四就告诉你他拿的是3
    s=d("麻子") 's="" 没有找到麻子怎么办呢,字典里就自动生成一个麻子d("麻子") =“”,告诉你他手上是空的
    注:这时字典中有三个人的存在,张三=1 ; 李四=3;麻子=“”
    三、将字典里的东西变成数组
    arr= d.Keys '把名字的集合按先来后到的原则放到一维数组里 arr(0)=“张三” ; arr(1)=“李四” ; arr(2)=“麻子”
    arr1=d.Items '把名字对应的值的集合按先来后到的原则放到一维数组里 arr1(0)=“1” ; arr1(1)=“3” ; arr1(2)=“”

    四、查找字典中有没有这个人
    s=d.Exists(“张三”) 's=True 有的
    s=d.Exists(“彭希遴”) 's=False 没有
    五、清空数组
    d.RemoveAll

       是不是简单呢?

    相关文章

      网友评论

          本文标题:39、[VBA入门到放弃笔记]字典:ehome彭版的字典精简版教

          本文链接:https://www.haomeiwen.com/subject/rikacxtx.html