VBA基础知识整理(字典,自定义函数)

字典
基本概念

'1 什么是VBA字典?
   '字典(dictionary)是一个储存数据的小仓库。共有两列。
      '第一列叫key , 不允许有重复的元素。
      '第二列是item,每一个key对应一个item,本列允许为重复
            'Key   item
             'A     10
             'B     20
             'C     30
             'Z     10

'2 即然有数组,为什么还要学字典?
   '原因:提速,具体表现在
      '1) A列只能装入非重复的元素,利用这个特点可以很方便的提取不重复的值
      '2) 每一个key对应一个唯一的item,只要指点key的值,就可以马上返回其对应的item,利用字典可以实现快速的查找

'3 字典有什么局限?
    '字典只有两列,如果要处理多列的数据,还需要通过字符串的组合和拆分来实现。
    '字典调用会耗费一定时间,如果是数据量不大,字典的优势就无法体现出来。
    
'4 字典在哪里?如何创建字典?
    
    '字典是由scrrun.dll链接库提供的,要调用字典有两种方法
      '第一种方法:直接创建法
        'Set d = CreateObject("scripting.dictionary")
      '第二种方法:引用法
        '工具-引用-浏览-找到scrrun.dll-确定

字典操作

'1 装入数据
  Sub t1()
      Dim d As New Dictionary
      Dim x As Integer
      
      For x = 2 To 4
       		d.Add Cells(x, 1).Value, Cells(x, 2).Value
      Next x
      
      MsgBox d.Keys(1)
      'Stop
  End Sub
  ------------------------

'2 读取数据

 Sub t2()
      Dim d
      Dim arr
      Dim x As Integer
      Set d = CreateObject("scripting.dictionary")
      
      For x = 2 To 4
       	  d.Add Cells(x, 1).Value, Cells(x, 2).Value
      Next x
      
      'MsgBox d("李四")
      'MsgBox d.Keys(2)
      Range("d1"
  • 12
    点赞
  • 84
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 在 VBA 中,要调用自定义函数,可以在代码中使用函数名并传递所需的参数。 例如,假设你有一个无返回值的自定义函数 `MyFunction`,它接受两个参数 `a` 和 `b`,你可以这样调用它: ``` MyFunction a, b ``` 注意,在调用自定义函数时,不需要使用括号。 另外,还可以在函数调用中使用表达式或变量来传递参数。例如: ``` MyFunction a + b, c * d ``` 或者: ``` MyFunction x, y ``` 在这种情况下,`x` 和 `y` 是变量,它们的值将用作函数的参数。 希望这能帮到你! ### 回答2: 在VBA中,无返回值的自定义函数是指没有返回结果的函数。通常情况下,我们使用Sub关键字来定义无返回值的自定义函数。 首先,我们需要在VBA模块中声明和定义一个无返回值的函数。例如,我们可以定义一个名为printMessage的函数来打印一条消息,如下所示: ```vba Sub printMessage() MsgBox "这是一条消息" End Sub ``` 要调用这个无返回值的函数,我们只需在程序中使用函数名加上参数列表即可。例如,我们可以在另一个过程中调用printMessage函数,如下所示: ```vba Sub main() '调用printMessage函数 printMessage End Sub ``` 以上代码会在主过程(main)中调用printMessage函数,并弹出一条消息框显示"这是一条消息"。注意,调用无返回值的函数时,不需要使用赋值语句或接收其返回结果。 总结来说,调用无返回值的自定义函数非常简单,只需在程序中直接使用函数名加上参数列表即可。这种类型的函数通常用于执行一些动作或操作,而不需要返回结果。 ### 回答3: 在VBA中,我们可以通过使用Function关键字来定义一个带有返回值的自定义函数。而如果我们想要调用一个无返回值的自定义函数,可以按照以下步骤进行。 首先,在VBA代码中定义一个无返回值的自定义函数,方法与定义带返回值的函数相同,只是不需要使用As关键字来指定返回值类型。 例如,我们定义一个简单的无返回值的自定义函数SubTest,它可以输出一条消息: Sub SubTest(ByVal message As String) MsgBox message End Sub 接下来,在想要调用这个无返回值自定义函数的地方,可以直接通过函数名和参数来调用。 例如,在Sheet1的按钮点击事件中调用这个函数,可以在按钮点击事件的VBA代码中添加以下代码: Private Sub CommandButton1_Click() SubTest "Hello, World!" End Sub 以上代码中,点击按钮后会调用SubTest函数,并且将字符串"Hello, World!"作为参数传递进去。然后,函数会弹出一个消息框,显示该字符串。 需要注意的是,调用无返回值自定义函数时,不需要使用赋值操作或者接收返回值。 总结起来,调用无返回值的自定义函数只需要在代码中使用函数名和参数进行调用即可。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值