gpt4 book ai didi

VBA 如何检查变量是否已设置?

转载 作者:行者123 更新时间:2023-12-02 15:08:10 25 4
gpt4 key购买 nike

我尝试在第一次调用函数时将静态变量初始化为 1。如何正确地做到这一点?这是类型不匹配错误。

 Static clip_success As Integer
If clip_success Is Nothing Then
clip_success = 1
End If

最佳答案

任何原始值类型都将使用其默认值进行初始化。对于值为 0 的数字类型;对于字符串,这是 "" (一个空字符串);对于日期,这是 1899-12-30Boolean 被初始化为 False

你的静态变量看起来很像一个标志 - 应该是一个 Boolean

Variant 被初始化为特殊值 Empty

任何对象引用都使用 Nothing/null 引用进行初始化。


所以:

Static clip_success As Long
If clip_success = 0 Then
clip_success = 1
End If

或者

Static clip_success As Date
If clip_success = CDate(0) Then
clip_success = DateTime.Now
End If

或者

Static clip_success As String
If clip_success = vbNullString Then
clip_success = "success!"
End If

或者

Static clip_success As Variant
If IsEmpty(clip_success) Then
clip_success = 1
End If

或者

Static clip_success As Object
If clip_success Is Nothing Then
Set clip_success = New [some class]
End If

关于VBA 如何检查变量是否已设置?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45870741/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com