首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何在Excel中以A:B格式显示比率?

如何在Excel中以A:B格式显示比率?
EN

Stack Overflow用户
提问于 2009-01-23 14:04:50
回答 6查看 250K关注 0票数 20

我有一个Excel数据电子表格,如下所示:

代码语言:javascript
复制
ColumnA ColumnB
33        11
25        5
6         4

我想要做的是添加第三列,它以A:B的格式显示columnA与columnB的比率。例如:

代码语言:javascript
复制
ColumnA ColumnB   Ratio
33        11       3:1
25        5    5:1
6         4    3:2

有谁知道实现这一点的方法吗?

提前谢谢。

EN

回答 6

Stack Overflow用户

回答已采纳

发布于 2009-01-23 14:23:15

你正在寻找最大公约数(GCD)。

您可以在VBA中递归地计算它,如下所示:

代码语言:javascript
复制
Function GCD(numerator As Integer, denominator As Integer)
  If denominator = 0 Then
    GCD = numerator
  Else
    GCD = GCD(denominator, numerator Mod denominator)
  End If
End Function

并在工作表中使用它,如下所示:

代码语言:javascript
复制
   ColumnA   ColumnB   ColumnC
1  33        11        =A1/GCD(A1; B1) & ":" & B1/GCD(A1; B1)
2  25         5        =A2/GCD(A2; B2) & ":" & B2/GCD(A2; B2)

建议将函数调用的结果存储在隐藏列中,并使用此结果来避免每行调用函数两次:

代码语言:javascript
复制
   ColumnA   ColumnB   ColumnC        ColumnD
1  33        11        =GCD(A1; B1)   =A1/C1 & ":" & B1/C1
2  25         5        =GCD(A2; B2)   =A2/C2 & ":" & B2/C2
票数 15
EN

Stack Overflow用户

发布于 2009-01-23 14:12:15

该页面上的第二个公式使用分析ToolPak的GCD函数,您可以从工具>插件添加它。

=A1/GCD(A1,B1)&":"&B1/GCD(A1,B1)

这是一个更加数学化的公式,而不是基于文本的操作。

票数 7
EN

Stack Overflow用户

发布于 2011-03-09 20:15:06

我发现这是最简单和最短的,但是我四舍五入到了小数点后零位:

="1" & ":" & ROUND((A1/B1),0)

注意&前后的空格。

这意味着"1“和":”被视为整体公式的附加非公式信息。ROUND函数将基本公式A1/B1四舍五入到小数点后0位。你可以试着改成1,2,3...小数位数。

我希望我说得很清楚了。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/472989

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档