Excel에서 셀을 KB, MB, GB 등의 형식으로 지정하려면 어떻게해야합니까?


88

바이트 단위의 셀에 값이 있습니다. 그러나 아무도 728398112238을 읽을 수 없습니다. 차라리 678.37GB라고 말하고 싶습니다.

비교적 쉽게 서식을 지정하는 공식을 작성하려면 (여기 하나 : http://www.yonahruss.com/2007/02/format-excel-numbers-as-gb-mb-kb-b.html )

그러나 이것을 '형식'으로 수행하는 방법이 있습니까? 셀에 큰 숫자를 넣고 싶지만 사람이 읽을 수있는 형식으로 표시되도록합니다.


3
"kB"는 표준입니다 (대문자가 아닌 소문자 'k'). 출처 : en.wikipedia.org/wiki/Kilobyte en.wikipedia.org/wiki/Kilo- 당신이 관심이없는 경우, 내 게시물 : 무시하세요
PonyEars

이 게시물의 링크는 죽었습니다. 다음은 공식을 사용하는 솔루션에 대한 또 다른 링크입니다. social.technet.microsoft.com/Forums/en-US/…
Joost

답변:


101

Excel의 서식 기능에서는 실제로 계산을 수행 할 수 없습니다. 다음과 같은 것을 사용하여 대략적인 추정을 할 수 있습니다.

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

1
와우 .. 당신은 내가 계산을 할 수 없다는 내 의심을 확인했습니다. .. 당신의 해결책은 천재입니다! 저것이나 가까운 것을 사용하겠습니다. 감사!
RickMeasham

6
''를 천으로 구분하고 ''를 쉼표로 구분하는 지역 설정의 경우 : [<500000] # ## 0 "B"; [<500000000] # ## 0 "MB"; # ## 0 "GB"
Grastveit 2013

1
죄송합니다.이 코드가 잘못되었습니다! "5"또는 500000으로 나누면 값이 완전히 다른 값으로 변환됩니다. 나는 값 "569692"를 사용했고이 코드는 "1MB"
Alper t를

54

다음은 내가 사용해온 것입니다.-

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

잘 작동하는 것 같습니다.


2
완벽하지는 않지만 (1000 대 1024의 배수) 충분하고 찬성되었습니다. 감사!
Skwerl 2012 년

2
Kevin : kB / MB / GB는 1000의 배수로 만 정확합니다 (SI로 정의, Mac 및 하드 드라이브에서 사용). 나는 이것이 당신이 1024 (Linux GUI에서 사용되는 것처럼 KiB / MiB / GiB를 더 정확하게 작성)를 원하는 것으로 변경되지 않는다고 생각 하므로이 역사적이고 혼란스러운 표기법을 유지하는 것이 Windows임을 지적합니다. 이진 표기법은 지난 세기에 표준화 되었기 때문에 프로그램을 사용할 때가되었습니다. ;-)
누가 복음 Usherwood

1
또는 당신은 바이트, KB, 대신 KB, MB, GB의 MB하려는 경우 :[<1000]#" B";[<1000000]0.00," KB";0.00,," MB"
아론 캠벨

13

위의 서식 지정 방법은 작동하지만 세 가지 수준에서만 가능합니다. 위는 KB, MB 및 GB를 사용했습니다. 여기에서는 6 개로 확장했습니다. 셀을 마우스 오른쪽 버튼으로 클릭하고 셀 서식을 선택합니다. 숫자 탭에서 사용자 지정을 선택합니다. 그런 다음 유형 : 상자에 다음을 입력합니다.

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

그런 다음 확인을 선택합니다. 여기에는 B, KB 및 MB가 포함됩니다. 그런 다음 동일한 셀을 선택한 상태에서 홈 리본, 조건부 서식, 새 규칙을 클릭합니다. 포함 된 셀만 서식을 선택합니다. 그런 다음 규칙 설명 아래에서 셀 값, 1000000000보다 크거나 같은 셀만 서식 지정 (즉, 9 개의 0) 그런 다음 서식, 숫자 탭, 사용자 지정을 클릭하고 유형 : 상자에 다음을 입력합니다.

[<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보다 큰 것은 56,700PB와 같이 더 큰 PB로 표시됩니다. 더 큰 값, EB 등을 처리하기 위해 다른 조건부 서식을 추가 할 수 있습니다.


1
참고 : 설치 프로그램에 다른 구분 기호를 규정하는 로케일이있는 경우 위 문자열의 구분 기호를 적절한 구분 기호로 대체하십시오. 내 언어로. 다음을 사용해야했습니다. [<1000] ## 0,00 "B"; [<1000000] ## 0,00. "KB"; ## 0,00 .. "MB"및 [<1000000000000] ## 0,00 ... "GB"; [<1000000000000000] ## 0,00 .... "TB"; #. ## 0,00 ..... "PB"
user1708042

12

Excel 형식 조건은 숫자 크기와 관련된 3 가지 조건 중 하나만 표시하지만 ( "양수, 음수, 0, 텍스트"코딩하지만 다음과 같이 표시하는 것을 선호 합니다. if isnumber 및 true, elseif isnumber 및 false, elseif number; elseif는 텍스트입니다 )

그래서 저에게 가장 좋은 대답은 David와 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"

선택해라!


10

내 지역 인 유럽에서 작동하도록 약간 변경했습니다 (. 천 단위 구분 기호, 쉼표 구분 기호) :

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

데이터 변환 (1000! = 1024)에 대해서도 동일한 문제가 있지만 나를 위해 일합니다.


4

바이너리 기가 바이트 (1024 * 1024 * 1024의 배수)를 표시하는 방법을 모르지만 다음과 같은 형식을 사용하여 10 진수 기가 바이트를 표시 할 수 있습니다.

0.00,,,"Gb"

2
b는 비트이고 B는 바이트입니다. 비트는 1/8 바이트이므로 혼동을 피하기 위해 항상 올바른 문자를 사용해야합니다. 메가 (1000000x)의 경우 M, 밀리 (1/1000)의 경우 m과 같은 접두사도 마찬가지입니다.
Liggliluff 2008 년

나는 단순함을 좋아합니다. 1,024의 배수가 아니더라도이 답변은 유용합니다.
satoc

1024의 배수는 어쨌든 KB, MB, GB가 아닙니다. KiB, MiB, GiB입니다.
Nilpo

4

위 수식은 첫 번째 줄에 빼기 기호가 필요합니다. "= 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의 배수라는 점을 제외하면 과학적 표기법과 같습니다.) 셀을 마우스 오른쪽 버튼으로 클릭하고 셀 서식을 선택합니다. 숫자 탭에서 사용자 지정을 선택합니다. 그런 다음 유형 : 상자에 다음을 입력합니다.

##0.00E+00

그런 다음 확인을 클릭하십시오. K, M 등 대신 +3, +6 등이 있습니다. 양수 및 음수뿐만 아니라 양수 및 음수에도 적용됩니다. -3은 m, -6은 u 등입니다.

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

2

Tera 미만은 GB에 기록하고 TB에 999GB 이상 기록합니다.

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

또는

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


1

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(E4/1000<1;CONCATENATE(E4;" bps");IF(E4/1000<1000;CONCATENATE(ROUND(E4/1000;2);" kbps");IF(E4/1000000<1000;CONCATENATE(ROUND(E4/1000000;2);" mbps");IF(E4/1000000000<1000;CONCATENATE(ROUND(E4/1000000000;2);" gbps")))))

여기에 이미지 설명 입력


안녕하세요, Stack Overflow에 오신 것을 환영합니다. 이미 많은 답변이있는 질문에 답변 할 때 제공하는 답변이 왜 실질적이고 원본 포스터가 이미 심사 한 내용을 반영하지 않는지에 대한 추가 정보를 추가해야합니다. 이것은 귀하가 제공 한 것과 같은 "코드 전용"답변에서 특히 중요합니다.
chb

1

이것을 값 (바이트) 옆에 붙여 넣으면 값의 크기가 무엇이든 자동으로 변경됩니다.

=IF(G10>=1099511627776,CONCATENATE(ROUND((G10/1024/1024/1024/1024),1)," TB"),IF(G10>=1073741824,CONCATENATE(ROUND((G10/1024/1024/1024),1)," GB"),IF(G10>=1048576,CONCATENATE(ROUND((G10/1024/1024),1)," MB"),IF(G10>=1024,CONCATENATE(ROUND((G10/1024),1)," KB"),IF(G10>=1,CONCATENATE((G10)," BYTES"),0)))))


1

여기에있는 모든 답변은 10의 거듭 제곱으로 값을 제공합니다. 다음은 적절한 SI 단위 (1024의 배수, 즉 Mebibytes, Gibibytes 및 Tebibytes)를 사용하는 형식입니다.

[>1099511627776]#.##,,,," TiB";[>1073741824]#.##,,," GiB";0.##,," MiB"

이는 소수점 두 자리를 표시하는 MiB, GiB 및 TiB를 지원합니다.


10의 거듭 제곱으로 나눕니다. MiB, GiB 및 TiB는 1024 ^ 2, 1024 ^ 3, 1024 ^ 4를 의미합니다.
Sam

@Sam 당신은 아마 당신이 코멘트에 대한 대답을 놓쳤을 것입니다.
kap

2
아니요, @Sam이 맞습니다. 이 답변은 1024 배수를 조건으로 올바르게 사용하지만 형식은 여전히 ​​10 기반입니다.
Nilpo

0

여기에 대한 답변을 본 후이 수식에서 더 큰 값에 소수 자리를 사용하고 음수 값을 수용하도록 개선했습니다.

=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""")))))))))))

1
원래 질문에는 수식 사용에 대한 세부 정보가 포함되었습니다. 그러나 그것은 숫자 형식을 사용하는 것에 관한 것입니다. 귀하의 솔루션은 음수를 처리한다는 점을 제외하면 연결된 솔루션과 매우 유사합니다. 별도의 IF 문에 포함하는 대신 ABS ()를 사용하여 절대 값을 가져옵니다.
RickMeasham

0

주어진 답변에서 예상 결과를 얻지 못했기 때문에 여기에 많은 답변이 구식이라고 생각합니다.

크기에 따라 포맷하고 싶은 KB 단위의 값이 있으면 다음을 시도해 볼 수 있습니다.


공식

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


초기 값 (KB) => 출력

952 => 952 KB

1514 => 1.51 MB

5122323 => 5.12 GB


0

정확한 결과를 얻으려면 표시 형식을 사용하여 계산하고 싶습니다.

A1 셀에 29773945664927 값이 있다고 가정합니다.

  1. B1 셀의 쉼표 수를 세십시오.

    = QUOTIENT (LEN (A1) -1,3)

  2. C1 셀에서 값을 1024 ^ B1로 나눕니다.

    = A1 / 1024 ^ B1

  3. D1 셀의 표시 단위.

    = SWITCH (B1, 5, "PB", 4, "TB", 3, "GB", 2, "MB", 1, "KB", 0, "B")

  4. B1 셀을 숨 깁니다.

스크린 샷

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.