VBA:如何使变体为空?

Posted

技术标签:

【中文标题】VBA:如何使变体为空?【英文标题】:VBA: how to null a Variant? 【发布时间】:2017-12-22 09:59:25 【问题描述】:

我有以下变体:

Dim comboitems() As Variant

我在所有代码中将其用作包含ComboBox 控件值的数组。

在代码的某一点,我需要清除/清空/空comboitems()。我能怎么做?我尝试了以下所有选项,但均未成功。

comboitems = ""
comboitems = Null
comboitems = Nothing
Set comboitems = ""
Set comboitems = Null
Set comboitems = Nothing
comboitems() = ""
comboitems() = Null
comboitems() = Nothing
Set comboitems() = ""
Set comboitems() = Null
Set comboitems() = Nothing

我得到的错误是这样的:

【问题讨论】:

Erase comboitems 也许? ReDim 没有preserve? 【参考方案1】:

对于变体数组,您可以使用擦除命令清除它们。

Erase comboitems

这是一个在 vba 中处理数组的方便参考指南:

https://excelmacromastery.com/excel-vba-array/

【讨论】:

以上是关于VBA:如何使变体为空?的主要内容,如果未能解决你的问题,请参考以下文章

Excel VBA,如果一个或多个文本框为空,如何禁用命令按钮

将多个值写入一个单元格 - VBA

VBA:如何从过滤后的数据中获取当前区域?

VBA IsMissing 函数如何在幕后工作?

布尔数组和变体类型 vba

VBA 变体溢出