使用Excel for Mac。我希望公式将十进制数舍入为分数。我想要的最小增量是1/16
(我可以很容易地做到)但我希望在适当时自动减少十六分之一到1/8
,1/4
和1/2
(不是四舍五入)这里)。
1/16
)14/16 - 这应该变成7/8
12/16 - 这应该变成3/4
8/16 - 这应该变成1/2
所以最后,我会得到一个大的Excel分数表,有些小到1/16
,还有一些更大。
我该怎么做?
答案 0 :(得分:0)
我知道你确实有一些格式化分数的功能。例如,Excel 2007具有:
我正在考虑“做数学”以获得0.0625的倍数的数字(小数),然后仅为外观应用格式。
答案 1 :(得分:0)
这适用于0到1之间的值。选择单元格并运行这个小宏:
Sub FixFormat()
Dim r As Range, v As Variant, s As String
Dim numerator As Long
Selection.NumberFormat = "General"
For Each r In Selection
v = r.Value
If v >= 0 And v <= 1 Then
r.NumberFormat = "??/16"
numerator = CLng(Split(r.Text, "/")(0))
Select Case numerator
Case 0, 1, 3, 5, 7, 9, 11, 13, 15
Case 2, 6, 10, 14
r.NumberFormat = "# ?/8"
Case 4, 12
r.NumberFormat = "?/4"
Case 8
r.NumberFormat = "?/2"
End Select
End If
Next r
End Sub
宏将检测该值并应用正确的格式。
答案 2 :(得分:0)
四舍五入到1/16
ROUND(YourNumber * 16,0)/ 16
然后将单元格设置为两位数。它们会自动减少到1 / 2,1 / 4,1 / 8,1 / 16。四舍五入&#34;额外&#34;一部分。这也可以用于向上和向下舍入。