【问题标题】:Round and concatenate an abbreviation in excel在excel中舍入并连接缩写
【发布时间】:2013-07-02 19:32:22
【问题描述】:

我正在尝试在 excel 中格式化公司的市值,使其看起来像 google-ie,

15.46B 
456.78M

在谷歌电子表格中,我调用函数 =GoogleFinance(A2, "MarketCap") 并接收数据。例如市值为 7,916,327,249.00 的 ACMP。

然后我有条件地除以 =IF(E2>1000000000,E2/1000000000,E2/1000000) 得到十进制形式的数字。如果市值超过 10 亿,则除以 bil。如果它低于然​​后我除以一密尔。

现在是 7.916327249。我有那个到 7.92。最后我尝试与 =IF(E2>1000000000,CONCAT(F2," B"),CONCAT(F2," M")) 但它撤消了舍入,我得到 7.916327249B。有什么简单的方法解决这个问题吗?谢谢。

【问题讨论】:

    标签: excel concatenation google-sheets rounding concat


    【解决方案1】:

    是的,使用 TEXT 功能!

    =IF(E2>1000000000,CONCAT(TEXT(F2,"0.00")," B"),CONCAT(TEXT(F2,"0.00")," M")) 
    

    【讨论】:

      【解决方案2】:

      在 Excel 中,这可以一步完成(不知道 Google Docs):

      =IF(E1>1000000000,TEXT(E1,"0.00,,,")&" B",TEXT(E1,"0.00,,")&" M")
      

      我认为,您甚至可以在此公式中嵌入 GoogleFinance() 函数。

      在 Excel 中,您可以创建以下内容作为 E1 的自定义格式

      [>=1000000000]0.00,,," B";[>100000000]0.00,," M"
      

      这样做的好处是该值仍然是一个数字,而不是文本,而且这一切都发生在单个单元格中。

      【讨论】:

      • 我正在考虑尽快简化这些步骤,唯一的问题是我使用的计算机是 XP,它使用 excel 2003,因此在文档上比编写脚本更容易。跨度>
      • 为什么要加逗号?无论 E1 对我来说是什么价值,他们似乎都将价值设为 0.00
      • 如果我在 E1 中输入原始值 7,916,327,249.00 或将其减少到数百万,它适用于我(在 Excel 中)。逗号有效地丢弃三个零的序列。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2019-10-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-01-14
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多