暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

VBA小技巧10:删除工作表中的错误值

完美Excel 2021-07-18
1029

学习Excel技术,关注微信公众号:

excelperfect


这里将编写VBA代码,用来删除工作表指定区域中的错误值,这在很多情况下都很有用。

 

如下图1所示,有一组数据,但其中有一些错误值,我们想要自动删除这些错误值。

1

 

删除错误值的数据表如下图2所示。

2

 

如果不使用VBA,可以使用Excel的“定位”功能来实现。如下图3所示,单击功能区“开始”的“编辑”组中的“查找和选择——定位条件”,弹出“定位条件”对话框。在该对话框中,选取“公式”中“错误”前的复选框,如下图3所示。

3

 

单击“确定”后,工作表中的错误数据单元格会被选择,单击“Delete”键,删除错误值,结果如上图2所示。

 

也可以使用下面的VBA代码实现:

Sub DeleteError1()

   Range("B2:E8").SpecialCells(xlCellTypeFormulas,16).ClearContents

End Sub

一句代码,即可实现!

 

还可以使用下面的VBA代码:

Sub DeleteError2()

    Dim rngData As Range

    Dim cell As Range

   

    Set rngData = Range("B2:E8")

   

    For Each cell In rngData

        If VBA.IsError(cell.Value) = True Then

           cell.Value = ""

        End If

    Next cell

   

    Set cell= Nothing

    Set rngData = Nothing

End Sub

代码中,使用IsError函数来判断单元格中是否是错误值,如果是,则设置该单元格为空。

 

这段代码虽然相对长一些,但相比较前面的两种方法,可以自动在错误值单元格中输入内容。

undefined
欢迎在下面留言,完善本文内容,让更多的人学到更完美的知识。

欢迎到知识星球:完美Excel社群,进行技术交流和提问,获取更多电子资料。

文章转载自完美Excel,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论