为什么 xlCellTypeConstants, 22 删除时比循环快?

use*_*417 5 excel vba

我找到了一个 VBA 片段,用于删除列值包含text 的行

它似乎比循环语句工作得快得多。我在网上查看了具体是如何xlCellTypeConstants, 22工作的。

[D:D].SpecialCells(xlCellTypeConstants, 22).EntireRow.Delete
Run Code Online (Sandbox Code Playgroud)

Thu*_*ame 3

您将第一个参数提供为xlCellTypeConstants,这意味着第二个参数可以是以下各项的按位组合:

xlNumbers = 1
xlTextValues = 2
xlLogical = 4
xlErrors = 16
Run Code Online (Sandbox Code Playgroud)

在您的例子中,您使用的是硬编码数字 22,这相当于按位xlErrors Or xlLogical Or xlTextValues

请参阅这篇文章存档)了解更多详细信息。