我时常对这样的事实感到困扰:当单元格太小的时候,Excel 会用“######”替换某些数字格式的单元格内容。
到目前为止,这还不是一个大问题,当它弄乱依赖于显示文本(即货币符号)的宏的输出时;它不构成单元格中数据的一部分。
有没有办法关闭此功能并让数字像文本一样被剪切或溢出?
这专门用于我希望我的单元格具有特定大小或我想隐藏需要解决的单元格的情况。我尝试了大量谷歌搜索,但没有找到解决方案,甚至没有找到类似的问题。
我对此的一个临时解决方法是启用收缩以适应单元格对齐,但理想情况下我只是想将其关闭。
我理解此功能是为了防止误读被截断的数字,但这对于我目前的目的来说并不构成困扰。
答案1
在引用单元格文本之前自动调整列宽。
例如
With ActiveCell
.EntireColumn.AutoFit
Debug.Print .Text
End With
答案2
您可以在输入数据之前将单元格/列/其他内容格式化为文本(或者在经过一些努力处理 Excel 可能已经完成的某些效果之后,例如以科学计数法显示)。
这样,您就会获得“剪辑”效果,并且不会将明显的格式更改为科学计数法或井号。
在大多数使用这些数字进行后续计算的情况下,即使格式为文本,Excel 也会很乐意将它们解释为数字。因此,将它们添加到某些内容等都会很好用。
但是像 这样的函数SUM()
不会。对于它们来说,在VALUE()
函数中包装范围或单元格引用将解决该问题: SUM(VALUE(A1:B5))
很好地汇总范围内的所有此类数据。
但是,任何逻辑上可以预期会发现文本与数字之间重要差异的功能(或菜单命令等)如果不采取额外步骤就会失败。例如查找功能。或者使用功能区菜单的过滤功能将发现任何格式化为文本的内容与格式化为数字或常规的内容不同。
因此,=IFERROR(VLOOKUP(VALUE(A1),B1:E4,2,FALSE),VLOOKUP(A1,B1:E4,2,FALSE))
可能会解决问题,但如果查找更复杂,可能需要更多相关的东西
最后,当使用数据透视表、Power Pivot 或 Power Query 中的数据时,所有问题都将被忽略。(PQ 是其中最不可靠的。)
但这里只需要基本的姑息治疗?请将其格式化为文本,看看它是否能解决问题且不会立即产生后续困难。