此代码已经使用了很长时间。我想也许我意外地按了一把钥匙,但我似乎无法看到它。我突然得到错误:
无法设置Range类的NumberFormat属性
在下面的代码中:
Worksheets("Sheet1").Cells(y + k, x + j).Select
TempValue = Worksheets("Sheet1").Cells(y + k, x + j).Value
Worksheets("Sheet1").Cells(y + k, x + j).NumberFormat = "#,##0" //ERROR HERE
Worksheets("Sheet1").Cells(y + k, x + j).Value = TempValue
答案 0 :(得分:6)
在Chat中发现的问题是工作簿有超过64,000种格式,因为用户在Excel中收到“太多不同的单元格格式”错误消息
解决方案
主题:您在Excel中收到“太多不同的单元格格式”错误消息
链接:http://support.microsoft.com/kb/213904
来自上述链接的语录
在Microsoft Excel 2007/2010中,文件可能会产生以下错误消息;
Excel在文件中找到了不可读的内容
当工作簿在Excel 2003中包含超过大约4,000种不同的单元格格式组合或在Excel 2007及更高版本中包含64,000时,会出现此问题。
链接中提到的解决方案是下载并运行XLStyesTool
答案 1 :(得分:0)
我在Office365ProPlus中使用Fuzzy LookUp加载项遇到了此问题。 运行FuzzyLookUp后,仅生成10行输出,并弹出此消息。
问题是由我的Excell本地设置引起的。
要解决此问题,我必须在常规Excel设置下将逗号分隔的十进制分隔符更改为点。
在我这边,它完美地解决了这个问题。