什么自定义格式掩码将3.0显示为3和3.10显示为3.1?
我正在尝试支持使用自定义SQL的Cognos报告,该报告从定义为NUMBER(11,4)的Oracle列中进行选择。如果我不对报表上的第1列应用任何格式,则生成的Excel列具有应用4位小数的“数字”类别格式。
因此,我看到显示以下示例格式化值:
a) 4,123.3400
b) 4.0123
c) 4.0100
d) 3
e) 0.10000
我希望在显示的小数点后只看到重要的零。例如,4.0100应为4.01,否则格式化正常。当数字是整数时,我宁愿不显示小数点。例如,对于没有小数部分的值,3优选为3.0。
我尝试过使用自定义格式进行试验,并且我能找到最接近我正在寻找的格式或者这种格式
#,###,##0.0###
产生:
a) 4,123.34
b) 4.0123
c) 4.01
d) 3.0
e) 0.1
使用无格式,第一个示例和我的自定义格式之间存在两个区别:
我喜欢看到以下内容,与opreceding示例的区别在于整数显示没有任何小数(d):
a) 4,123.34
b) 4.0123
c) 4.01
d) 3
e) 0.1
Excel默认使用“常规”格式对其进行处理,但是,诀窍是尝试让Cognos使用从NUMBER(11,4)列中选择的自定义SQL来生成该设置。如上所述,使用默认格式会导致Excel输出使用常规格式但有4个小数位,因此如果有任何派系部分,我会得到4位小数的精度。该解决方案似乎是使用自定义格式。
我的格式可以吗
#,###,##0.0###
是否需要像Excel的数字通用格式一样工作?
答案 0 :(得分:2)
答案是否定的,您无法使用一种格式获得所需的所有格式。
你应该知道,即使是Excel的General也没有得到你想要的一切,因为它没有提供数千个分隔符。
你必须选择放弃的东西。如果你可以放弃逗号,那么为什么不使用General?
另请注意,您有多余的#
标记。您的格式相当于#,##0.0###
。
有关可能的进一步想法,请参阅this related question。