Excel 仅使用需要的特殊格式来格式化数字:1/2、3/8、7/16 等

Excel 仅使用需要的特殊格式来格式化数字:1/2、3/8、7/16 等

我在 Excel 中有一列数字,用于帮助我完成木工项目。由于我身处美国,我期望测量结果如下:

  • 4 5/8
  • 4 1/2
  • 4 3/4

我能够让数字显示为分数,但我希望它们的精度只达到分数要求的精度。我不需要公分母;事实上,它们使文件的读取更加麻烦。以下是我得到的结果:

  • 4 5/8
  • 4 4/8
  • 4 6/8

我怎样才能使该列中的所有单元格以最简单的格式格式化(例如使用 1/2 而不是 4/8)?提前感谢您的帮助。

答案1

将结果四舍五入为 1/8,然后应用“最多一位数字”的分数格式:

=ROUND(<formula>*8,0)/8

<formula>你的原始公式在哪里?

我不知道您如何进行木工计算,您可能想使用它ROUNDUP来避免计算不必要的内容。

此外,您可能希望在公式中将 8 替换为 16, 32,并显示最多两位数字。

答案2

我有一些非整数的数字,我想将小数部分四舍五入为最接近的 ⅛ 倍数,然后将其简化为最低项。

如果

  • 以上是对您的要求的准确描述,
  • 您希望有一列包含实际数字,另一列显示显示值, 和
  • 您愿意将工作簿中其他位置的几个单元格专用于查找表,

那么这个答案应该对你有用。

创建一个数组,将所有可能的分数从其数字形式映射到其文本(显示)形式:

        
      请注意,非空文本值(R2,,R3...)都以空格开头。

然后,如果单元格C1包含数字,例如 4.62,则设置D1

=INT(C1+Q$2/2) & VLOOKUP(MOD(C1+Q$2/2,1), Q$1:R$8, 2)

Q2包含最小可表示分数;在上面的例子中,它是 ⅛ (0.125)。因此,我们希望将其一半添加到该C1值中以便进行舍入;我们希望 4.94 和 5.06 之间的任何值都显示为“5”。然后MOD(C1+Q$2/2,1)提取增强数字的小数部分,并找到VLOOKUP要显示的文本形式。

这种方法的特点是您不局限于单个分数序列(例如 1/8 的倍数);如果您还想要 1/5 或 1/3 的倍数,则可以将它们添加到表中。

相关内容