public function~~~ 쓰는 사용자 정의 함수 문제입니다
문제에서 지정된 기준일 셀(ex)H1이 있고 작성일은 제시된 표 안에 있는데
연도를 빼서 조건이 일치하면 A를 적고 일치하지 않으면 B를 적는 문제입니다
(이해가 되실지 모르겠는데ㅠㅠㅠ... 제가 그 문제를 그대로 쓸 수가 없어서요ㅠㅠ)
그래서 if ~ else문과 year 함수를 이용해서 하는건데
(앞에 구문들 생략)
if year(기준일)=year(작성일) then
fn(비고) = A
else
fn(비고) = B
이렇게 써서 함수 마법사로 사용자 정의를 누르고 값을 집어넣었습니다
웬걸? 식은 맞는 것 같은데 에러가 나거나 원하는 값이 안 나왔습니다
근데
함수마법사에서 쓰게 되면 옆에 예시?가 뜨잖아요?
거기서 기준일 넣으면 5자리 숫자가 나오고 (ex)48126
작성일 넣으면 4자리 숫자가 나왔습니다 (ex)2017
저렇게 나오니 에러가 나올 수 밖에 없구나 생각했어요;
저런건 어떻게 풀어야 하나요?
기준일은 당연히 절대참조를 했구요... 둘 중 뭐가 잘못된 걸까요...ㅠㅠ
안녕하세요 컴도사 초이 최우성 강사입니다.
정확하게는 작성된 파일을 봐야 하겠지만...
추측컨대 아마도 작성일이 숫자 형태가 아닌지 모르겠습니다.
1) 년도 4자리만 입력된 숫자일 경우 해결
if 작성일=year(기준일) then
fn비고 = A
else
fn비고 = B
End If
2) 날짜가 총 8자리 숫자인 경우 예) 20170904
if LEFT(작성일, 4)*1 = year(기준일) then ' 또는 Val(left(작성일, 4))=year(기준일)
fn비고 = A
else
fn비고 = B
End If
항상 시험문제를 푸실 때는 수식입력줄을 보고 셀에 실체값을 확인하시기 바랍니다.
셀에 보이는 것만으로 데이터를 가지고 판단을 하지 않으셨음 합니다.