xlErrorChecks枚举Office 365 / Excel 2016

在我当前版本的Excel中,xlNumberAsText的枚举看起来与文档XlErrorChecks枚举(Excel)和SO上推荐的使用之前的用法不一致。 看来,特别的错误是项目4; 而之前有关使用VBA清除此错误的post使用了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。 感谢那些证实了这个问题的人。

跟进:我通过Excel中的反馈选项向MS汇报了这一点。 而今天上午更新之后,问题似乎已经得到纠正。

在这里输入图像说明