在Excel中隐藏字符,我收到错误:无法设置Range类的NumberFormat属性

时间:2015-12-23 00:03:11

标签: excel vba excel-vba

我只希望我的cells只显示最后100个字符。

这是我的代码:

Sub HideCharacters()
    Dim DQ As String, mesage As String
    On Error GoTo Errorcatch
    DQ = Chr(34)
    For Each r In Selection
        mesage = Right(r.Value, 100)
        mesage = DQ & mesage & DQ
        r.NumberFormat = ";;;" & mesage
    Next r
Errorcatch:
MsgBox Err.Description
End Sub

代码工作了一段时间然后当我添加更多工作表并将宏应用于它们时,我开始收到错误:&#34; Unable to set the NumberFormat property of the Range class&#34;,我该如何解决这个问题?< / p>

提前谢谢你, -Matt

1 个答案:

答案 0 :(得分:1)

自:

https://support.office.com/en-my/article/Excel-specifications-and-limits-1672b34d-7043-467e-8e27-269d656771c3

  

工作簿中的数字格式

     

200到250之间,具体取决于Excel的语言版本   你已经安装了

在我的Excel 2010中,第207种格式失败:

Sub Tester()
    Dim c As Range
    For Each c In Range("A1:A1000")
        c.NumberFormat = ";;;""" & c.Address(False, False) & """"
    Next c
End Sub