[英]xlErrorChecks Enumeration Office 365/Excel 2016
在我当前的Excel版本中,xlNumberAsText的枚举似乎与文档XlErrorChecks枚举(Excel)和SO上建议的先前用法都不一致。 似乎特别的错误是第4项。 而以前有关使用VBA清除此错误的文章使用的常数为3。
这是Excel 2016中的错误吗? 还是我做错了什么。
这是演示该问题的代码。 并且,如果您在运行代码后检查工作表,很明显,在Excel中,该错误被标记为NumberAsText
而不是Inconsistent Formula
。
Option Explicit
Sub foo()
Dim I As Long
Dim B As Boolean
Dim S As String
Dim R As Range
'Save current state
B = Application.ErrorCheckingOptions.NumberAsText
'Enable
Application.ErrorCheckingOptions.NumberAsText = True
Set R = Cells(1, 1)
With R
.Clear
.NumberFormat = "@"
.Value = "1"
End With
For I = 1 To 10
S = S & vbLf & I & vbTab & R.Errors(I).Value
Next I
S = Mid(S, 2)
'Restore original state
Application.ErrorCheckingOptions.NumberAsText = B
MsgBox S
End Sub
而且,在尝试清除错误框时,我必须使用
R.Errors(4).Ignore = True
Errors(3)
和Errors(xlNumberAsText)
都不会对错误框产生任何影响。
我注意到了与枚举和文档的其他不一致之处:
Inconsistent Formula: 5
Wrong Data Type: 2
我不会去检查其余的东西。 但我将尝试向MS报告。 感谢那些确认了这个问题的人。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.