这是一个简单的宏,它创建一个工作表,其中包含一个单元格应用于此单元格的数字格式可能具有误导性警告(以绿色三角形表示)。
Sub createWarning()
Dim wb As Workbook
Dim ws As Worksheet
Set wb = Workbooks.Add
Set ws = wb.Sheets(1)
ws.Cells(1, 1).Value = 98765.4321
ws.Cells(1, 2).FormulaR1C1 = "= RC[-1]"
ws.Cells(1, 2).NumberFormat = "yyyy-mm-dd hh:mm:ss"
End Sub
我希望能够使用 VBA 检测此类警告。这可能吗?
答案1
注释部分有应用程序设置(如果打开则会显示)
Application.ErrorCheckingOptions.MisleadingNumberFormats 属性,它将返回布尔值(True/False)。
细胞水平检查
MsgBox ws.Cells(1, 2).Errors(xlMisleadingFormat).Value
MsgBox ws.Cells(1, 2).Errors(10).Value