본문 바로가기

엑셀강좌/☞ 함수

LEFTB 함수

[1] LEFTB

 ▶ 정의

 텍스트 문자열의 시작 지점부터 지정한 바이트 수만큼의 문자를 반환 합니다. 더블바이트 문자 집합(DBCS)에 사용합니다.

 ▶ 인수

  LEFTB(text, num_bytes)

 인수

설명 

입력값 

 text

 추출하려는 문자가 들어 있는 텍스트 문자열 입니다. 또는 텍스트가 들어 있는 셀 주소입니다.

텍스트

 num_bytes

 시작(왼쪽)에서부터 추출할 바이트 수를 입력합니다.

숫자

[2] LEFTB 설명

 ▶ 설명

 * 텍스트 문자열의 시작 지점 부터 몇 개의 글자만을 바이트 수 만큼 추출하고 싶을때 사용하는 함수입니다.
 * LEFTB가 LEFT와 다른점은 바이트 단위로 문자를 추출하는 것입니다. (참고: LEFT와 차이점 입니다.)
   (예: ab -> 바이트  수 2,  한글 --> 바이트 수 4)
 * 아시아권(한글, 일본어, 중국어)는 1글자가 2바이트라고 생각하시면 됩니다.
 * 영문, 숫자, 공백등은 1개의 문자가 1byte라고 생각하시면 됩니다.
 * LEFT함수로 LEFTB함수를 커버할 수 있어서 LEFTB함수를 잘 사용하지는 않습니다.
 * 아래는 관련함수 입니다. MID함수만 알고 있으면 6개의 함수를 모두 커버할 수 있습니다.
   (하지만 각 함수에 편리성이 있으므로 6개의 함수를 알고 있으면 편리하게 사용할 수 있습니다.)

 <관련 함수>
    - LEFT : 왼쪽(텍스트 시작 지점)부터 글자 수 만큼 문자를 추출할 수 있습니다.
    - LEFTB : 왼쪽(텍스트 시작 지점)부터 바이트 수 만큼 문자를 추출할 수 있습니다.
    - MID : 사용자가 지정한 위치에서 지정한 글자 수 만큼 문자를 추출할 수 있습니다.
    - MIDB : 사용자가 지정한 위치에서 지정한 바이트 수 만큼 문자를 추출할 수 있습니다.
    - RIGHT : 오른쪽(텍스트 끝 지점)부터 글자 수 만큼 문자를 추출할 수 있습니다.
    - RIGHTB : 오른쪽(텍스트 끝 지점)부터 바이트 수 만큼 문자를 추출할 수 있습니다.

[3] LEFTB 예제 및 사용 방법

 ▶ 예제 [ 아래 데이터의 주소에서 시작 지점 부터 4바이트를 추출하고 싶은 경우 ]

 ▶ 사용방법

1. 4바이트 추출 아래 셀(C3)에 LEFTB 함수 수식을 입력합니다.
   ①  =LEFTB(             =LEFTB를 입력합니다.
   ②  =LEFTB(G3,3)       문자열을 추출할 데이터 셀 범위(G3)를 입력합니다.
   ③  =LEFTB(G3,3)       주소에서 앞의 4바이트만 추출함으로 4을 입력합니다.

2. 셀 C3C4, C5, C6, C7에 복사합니다.
   ①  C3을 아래로 드래그하여 복사 할 수 있습니다.
   ②  셀 범위는 상대참조(주소)로 입력하는 것이 좋습니다.
       ▶ 절대 참조:  셀주소에 $를 넣어주는 것이 절대 참조입니다. 셀 복사 및 드래그 시 셀주소가 변경되지 않습니다.
          예) $G$3           
       ▶ 상대 참조:  셀주소에 $가 없는 것이 상대 참조입니다. 셀 복사 및 드래그 시 셀주소가 변경됩니다.
          예) G3

<LEFTB와 LEFT 차이점>

* 위의 LEFT와 LEFTB 결과를 비교해서 차이점을 설명하려고 합니다.
   ▶ 2개의 함수 모두 문자열 왼쪽(시작)부터 문자를 추출할 수 있습니다.
   ▶ LEFT는 문자수 만큼 문자를 추출할 수 있으며, LEFTB는 바이트 수 만틈 문자를 추출할 수 있습니다.
      ① LEFT는 추출 문자수1 이므로 주소 데이터에서 1개의 글자"서"를 가지고 옵니다.
          LEFTB는 추출 바이트수1 이므로 주소 데이터에서 아무것도 가지고 오지 않습니다.
         (참고: 한글, 일본어, 중국어 등은 1글자가 2바이트(byte)입니다.)
            
      ② LEFT는 추출 문자수2 이므로 주소 데이터에서 2개의 글자"서울"을 가지고 옵니다.            
          LEFTB는 추출 바이트수2 이므로 주소 데이터 한글 글자 1자가 2바이트(byte)이므로 "서"를 가지고 옵니다.           
            
      ③ LEFT는 추출 문자수3 이므로 주소 데이터에서 3개의 글자"서울("을 가지고 옵니다.           
          LEFTB는 추출 바이트수3 이므로 주소 데이터 한글 글자 1자가 2바이트(byte)이므로 "서"만 가지고 옵니다.           
            
      ④ LEFT는 추출 문자수4 이므로 주소 데이터에서 4개의 글자"서울(S"를 가지고 옵니다.           
          LEFTB는 추출 바이트수4 이므로 주소 데이터 한글 글자 1자가 2바이트(byte)이므로 "서울"을 가지고 옵니다.           
            
      ⑤ LEFT는 추출 문자수5 이므로 주소 데이터에서 5개의 글자"서울(SE"를 가지고 옵니다.           
          LEFTB는 추출 바이트수5 이므로 주소 데이터 한글 글자 1자가 2바이트(byte)이므로 "서울("을 가지고 옵니다.           
          (한글, 일본어, 중국어 등이외의 영문, 숫자, 특수 문자는 1바이트(byte)입니다. 즉 괄호특수문자이므로 가지고 올수 있습니다.)
            
      ⑥ LEFT는 추출 문자수6 이므로 주소 데이터에서 6개의 글자"서울(SEO"를 가지고 옵니다.           
          LEFTB는 추출 바이트수6 이므로 주소 데이터 한글 글자 1자가 2바이트(byte)이므로 "서울(S"을 가지고 옵니다.           
          (한글, 일본어, 중국어 등 이외의 영문, 숫자, 특수 문자는 1바이트(byte)입니다. 즉 S영문이므로 가지고 올수 있습니다.)

 

          (중요) 만약 문자열이 모두 영문으로만 되어 있으면 LEFT LEFTB결과는 동일합니다. 왜냐하면 영문은 1byte이기 때문입니다.

                  그런데 문자열에 한글이 썩여있으면 LEFTLEFTB의 결과는 동일하지 않습니다. 왜나하면 한글은 2byte이기 때문입니다.

 

[4] 참고 사항

 ▶ 오류 발생 사항

* num_bytes는 0이거나 0보다 커야 합니다. 음수이면 #VALUE!가 표시 됩니다.
* 왼쪽 첫 글자가 한글인 상태에서 num_bytes 1 이면 아무것도 표시되지 않습니다.
  (이유는 한글은 2byte이므로 표시하려면 2를 입력해야 합니다.)
* num_bytes가 문자열의 길이(바이트 수)보다 길면 LEFTB는 문자열 전체를 반환합니다.

 ▶ 관련 함수

 * 관련함수로는 LEFT, MID, MIDB, RIGHT, RIGHTB가 있습니다.

'엑셀강좌 > ☞ 함수' 카테고리의 다른 글

MIDB 함수  (1) 2019.03.07
MID 함수  (0) 2019.03.06
LEFT 함수  (0) 2019.03.01
MEDIAN 함수  (0) 2019.02.18
MINA 함수  (0) 2019.02.15