gpt4 book ai didi

excel - VBA在特定的工作表中搜索错误,然后将结果传递回主宏

转载 作者:行者123 更新时间:2023-12-03 08:06:36 24 4
gpt4 key购买 nike

我需要一个宏,该宏将在工作簿中的特定工作表中搜索公式错误。这需要在多个不同的工作簿中工作,每本书中的工作表名称都不同。一旦完成检查,我希望它定义一个名为SheetErrors的变量,如果有错误,则将其定义为“1”,否则将其定义为“0”。如果它是“1”,则需要将其传递回主宏,因为我希望它退出子宏并显示一个消息框,指出电子表格包含错误。

我已编写以下代码来查找错误:

Sub Error_Finder()

Dim celltxt As String
Dim SheetErrors As String

celltxt = ActiveSheet.Range("A:FA").Text



If InStr(1, celltxt, "#NULL!") Or _
InStr(1, celltxt, "#NUM!") Or _
InStr(1, celltxt, "#REF!") Or _
InStr(1, celltxt, "#VALUE!") Then
SheetErrors = "1"
Else
SheetErrors = "0"


End Sub

在Google上找不到将SheetErrors变量传递回主宏的有用信息。我们将不胜感激您能提供的所有信息,而且,我对VBA还是陌生的,因此,如果有更好的方法来完成上述工作,请告诉我。

谢谢,

P

最佳答案

如果您想传递一些东西,可以考虑使其成为一个函数。看起来像这样:

编辑:感谢K.Davis和Tim Williams的建议

Function SheetErrors() As String

Dim Rng As Range

Set Rng = ActiveSheet.Range("A:FA")
On Error Resume Next
If (Rng.SpecialCells(xlCellTypeFormulas, xlErrors).count = 0) Then
SheetErrors = "0"
Else
SheetErrors = "1"
End If

On Error GoTo 0

End Function

关于excel - VBA在特定的工作表中搜索错误,然后将结果传递回主宏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53069715/

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