fn비고 작성 법에서요
해설에
if mid(제품명,len(제품명)-4,3)*1
로 되어있는데
len뒤에 -4,3,*1 을 왜쓰는건가요?
문제의 조건 중
제품명에서 “mg” 앞의 숫자가 100 이상이면
이라는 조건이 있습니다.
파일에서 제품명을 확인하면
건웅 로딘정 100mg
국제 구루메포미정 250mg
와 같이
문자열의 길이는 다르지만 모두 mg라는 글자 앞에 숫자가 2자리 혹은 3자리인 것을 확인할 수 있습니다.
예를 들어 제품명이
건웅 로딘정 100mg
라면,
Mid(제품명, Len(제품명)-4, 3)*1
- Len(제품명)-4 : 제품명 전체 길이에서 4를 뺍니다. 결과는 12-4 = 8입니다.
- MID(제품명, 8, 3) : 제품명의 8번째 자리에서 3글자를 추출합니다.
건웅 로딘정 100mg
공백을 포함해서 8번째 자리는 100의 1이고 여기서 3글자를 추출하면 100이 됩니다.
- 100 * 1 : 추출된 100은 문자입니다. 그래서 계산을 위해 *1을 수행하여 숫자로 만드는 것입니다.
이제 앞선 수식에 넣으면 아래와 같이 됩니다.
IF 100>=100 then
mg 앞의 숫자가 2글자인 경우에는 빈공백과 함께 " 90"이 추출되는데, 여기에 *1을 하면 90으로 인식됩니다.
좋은 하루 되세요.
-
관리자2022-03-28 16:32:59
문제의 조건 중
제품명에서 “mg” 앞의 숫자가 100 이상이면
이라는 조건이 있습니다.
파일에서 제품명을 확인하면
건웅 로딘정 100mg
국제 구루메포미정 250mg
와 같이
문자열의 길이는 다르지만 모두 mg라는 글자 앞에 숫자가 2자리 혹은 3자리인 것을 확인할 수 있습니다.
예를 들어 제품명이
건웅 로딘정 100mg
라면,
Mid(제품명, Len(제품명)-4, 3)*1
- Len(제품명)-4 : 제품명 전체 길이에서 4를 뺍니다. 결과는 12-4 = 8입니다.
- MID(제품명, 8, 3) : 제품명의 8번째 자리에서 3글자를 추출합니다.
건웅 로딘정 100mg
공백을 포함해서 8번째 자리는 100의 1이고 여기서 3글자를 추출하면 100이 됩니다.
- 100 * 1 : 추출된 100은 문자입니다. 그래서 계산을 위해 *1을 수행하여 숫자로 만드는 것입니다.
이제 앞선 수식에 넣으면 아래와 같이 됩니다.
IF 100>=100 then
mg 앞의 숫자가 2글자인 경우에는 빈공백과 함께 " 90"이 추출되는데, 여기에 *1을 하면 90으로 인식됩니다.
좋은 하루 되세요.