首页 文章

如何将Excel中的单元格格式化为KB,MB,GB等?

提问于
浏览
66

我在单元格中有一个以字节为单位的值 . 但是没有人可以阅读728398112238.我宁愿它说678.37GB

写一个公式来格式化它相对容易(这里是一个:http://www.yonahruss.com/2007/02/format-excel-numbers-as-gb-mb-kb-b.html

但有没有办法做这个'格式'?我希望在单元格中有大数字,但它显示为人类可读的格式 .

12 回答

  • 2

    您无法在Excel的格式设置功能中进行实际计算 . 您可以使用以下内容进行粗略估计:

    [<500000]#,##0" B ";[<500000000]#,##0,," MB";#,##0,,," GB"
    
  • 2

    这是我一直在使用的: -

    [<1000000]0.00," KB";[<1000000000]0.00,," MB";0.00,,," GB"
    

    似乎工作正常 .

  • 68

    虽然Excel格式条件只显示与数字大小相关的3个条件中的1个(它们将其编码为"positive; negative; zero; text"但我更喜欢将其视为:if isnumber和true; elseif isnumber和false; elseif number; elseif is text)

    所以对我来说,最好的答案是David's以及Grastveit对其他区域格式的评论 .

    以下是我根据我制作的报告使用的 .

    [<1000000]#,##0.00," KB";[<1000000000]#,##0.00,," MB";#,##0.00,,," GB"
    
    [>999999999999]#,##0.00,,,," TB";[>999999999]#,##0.00,,," GB";#.##0.00,," MB"
    
    [<1000000]# ##0,00 " KB";[<1000000000]# ##0,00  " MB";# ##0,00   " GB"
    
    [>999999999999]# ##0,00    " TB";[>999999999]# ##0,00   " GB";# ##0,00  " MB"
    

    随便挑选!

  • 39

    轻微更改,使其在我的地区,欧洲( . 作为千位分隔符,逗号作为小数分隔符)工作:

    [<1000000]#.##0,00" KB";[<1000000000]#.##0,00.." MB";#.##0,00..." GB"
    

    数据转换仍然存在同样的问题(1000!= 1024),但它确实适合我 .

  • 7

    我不知道如何让它显示二进制千兆字节(1024 * 1024 * 1024的倍数)但您可以使用以下格式显示十进制千兆字节:

    0.00,,,"Gb"
    
  • 1

    上面的公式在第一行需要一个减号:“= IF(A1 <-999500000000”

    =IF(A1<-999500000000,TEXT(A1,"#,##.#0,,,"" TB"""),
    IF(A1<-9995000000,TEXT(A1,"#,##.#0,,,"" GB"""),
    IF(A1<-9995000,TEXT(A1,"#,##0,,"" MB"""),
    IF(A1<-9995,TEXT(A1,"#,##0,"" KB"""),
    IF(A1<-1000,TEXT(A1,"#,##0"" B """),
    IF(A1<0,TEXT(A1,"#,##0"" B """),
    IF(A1<1000,TEXT(A1,"#,##0"" B """),
    IF(A1<999500,TEXT(A1,"#,##0,"" KB"""),
    IF(A1<999500000,TEXT(A1,"#,##0,,"" MB"""),
    IF(A1<999500000000,TEXT(A1,"#,##.#0,,,"" GB"""),
    TEXT(A1,"#,##.#0,,,,"" TB""")))))))))))
    
  • 3

    另一种解决方案是使用工程符号 . (这就像科学记数法,除了指数总是3的倍数 . )右键单击单元格并选择格式化单元格 . 在数字选项卡下,选择自定义 . 然后在Type:框中,输入以下内容:

    ##0.00E+00
    

    然后单击确定 . 而不是K,M等,你将有3,6等 . 这将适用于正数和负数,以及正和负指数,-3是m,-6是你,等等 .

    567.00E-06
      5.67E-03
     56.70E-03
    567.00E-03
      5.67E+00
     56.70E+00
    567.00E+00
      5.67E+03
     56.70E+03
    567.00E+03
      5.67E+06
    
  • 0

    上述格式化方法有效,但仅适用于三个级别 . 以上使用的是KB,MB和GB . 在这里,我把它扩展到六个 . 右键单击单元格,然后选择“设置单元格格式” . 在数字选项卡下,选择自定义 . 然后在Type:框中,输入以下内容:

    [<1000]##0.00"  B";[<1000000]##0.00," KB";##0.00,," MB"
    

    然后选择确定 . 这包括B,KB和MB . 然后,选择相同的单元格,单击“主页功能区”,“条件格式”,“新建规则” . 选择仅格式化包含的单元格 . 然后在规则描述的下方,仅格式化单元格,大于或等于1000000000(即9个零)的单元格 . 然后单击格式,数字选项卡,自定义,并在类型:框中,输入以下内容:

    [<1000000000000]##0.00,,," GB";[<1000000000000000]##0.00,,,," TB";#,##0.00,,,,," PB"
    

    选择确定,然后单击确定 . 仅当值大于1,000,000,000时,此条件格式才会接管 . 它将负责GB,TB和PB范围 .

    567.00  B
      5.67 KB
     56.70 KB
    567.00 KB
      5.67 MB
     56.70 MB
    567.00 MB
      5.67 GB
     56.70 GB
    567.00 GB
      5.67 TB
     56.70 TB
    567.00 TB
      5.67 PB
     56.70 PB
    

    任何大于PB的东西都会显示为更大的PB,例如56,700 PB . 您可以添加另一个条件格式来处理更大的值,EB等 .

  • 8

    小于Tera将写入GB并且TB上写入超过999 GB

    [<1000] 0“GB”; [> 999] 0.0,“TB”

    要么

    [<1000] 0“GB”; [> = 1000] 0.0,“TB”

  • 4

    我使用CDH hadoop,当我输出excel报告时,我有两个问题;

    1)将Linux日期转换为excel日期,
    为此,在日期列旁边添加一个空列,假设顶行是B4,粘贴到公式下面并将 BLACK "+" 一直拖到列末尾的最后一天 . 然后隐藏原始列

    =(((B4/1000/60)/60)/24)+DATE(1970|1|1)+(-5/24)
    

    2)将磁盘大小从字节转换为TB,GB和MB
    最好的公式就是这个

    [>999999999999]# ##0.000,,,," TB";[>999999999]# ##0.000,,," GB";# ##0.000,," MB"
    

    它将为您提供3位小数值,只需格式化单元格 - >自定义并粘贴上面的代码

  • 1

    在看到这里的答案之后,刚刚改进了这个公式,在较大的值上有小数位并满足负值 .

    =IF(A1<999500000000,TEXT(A1,"#,##.#0,,,"" TB"""),
    IF(A1<-9995000000,TEXT(A1,"#,##.#0,,,"" GB"""),
    IF(A1<-9995000,TEXT(A1,"#,##0,,"" MB"""),
    IF(A1<-9995,TEXT(A1,"#,##0,"" KB"""),
    IF(A1<-1000,TEXT(A1,"#,##0"" B """),
    IF(A1<0,TEXT(A1,"#,##0"" B """),
    IF(A1<1000,TEXT(A1,"#,##0"" B """),
    IF(A1<999500,TEXT(A1,"#,##0,"" KB"""),
    IF(A1<999500000,TEXT(A1,"#,##0,,"" MB"""),
    IF(A1<999500000000,TEXT(A1,"#,##.#0,,,"" GB"""),
    TEXT(A1,"#,##.#0,,,,"" TB""")))))))))))
    
  • 0

    我怀疑这里的很多答案已经过时了,因为我没有从给定的答案中得到预期的结果 .

    如果您希望根据大小设置KB格式的值,则可以尝试以下操作 .


    公式

    [<1000]#" KB ";[<1000000]#0,00 " MB";0,## " GB"


    初始值(以KB为单位)=>输出

    952 => 952 KB

    1514 => 1.51 MB

    5122323 => 5.12 GB

相关问题