Excel 减少表示增量为0.0625的分数

Excel 减少表示增量为0.0625的分数,excel,formatting,excel-formula,excel-2011,Excel,Formatting,Excel Formula,Excel 2011,使用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的分数,还有大一些的分数 我该怎么做呢?我想您确实有一些格式

使用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的分数,还有大一些的分数


我该怎么做呢?

我想您确实有一些格式化分数的功能。例如,Excel 2007有:


我正在考虑“做数学运算”,以获得0.0625的倍数的数字小数,然后仅对外观应用格式。

这将适用于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
宏将检测该值并应用正确的格式。

四舍五入到1/16

舍入号码*16,0/16


然后将单元格设置为两位小数。它们将自动减少到1/2、1/4、1/8、1/16。四舍五入减少了多余的部分。这可以与向上取整和向下取整一起使用。

这是excel 2011。我可以将其设置为两位数的格式,但之后将保持为两位数。如果适用,我想将1/16数字转换为1/8、1/4和1/2。到目前为止,我只能看到如何为一组值设置1个约定。。。但不是多重的。谢谢。。。最初,这不起作用,因为我忘记了先将数字四舍五入到一个可被0.0625整除的数字,从而对它们进行转换。一旦我这么做了,这个选项就起作用了。