2026_최신기출유형_03회
-1. 과목별시험성적 보고서 완성 9/15
-컨트롤 원본 속성 X [txt평가]의 컨트롤 속성 원본 값 (=Switch([성적]>=90,"장학",[성적]>=80,"우등",True,""))이 정답(=Switch([성적]>=90,"장학",[성적]>=80,"우등"))과 다릅니다.
-컨트롤 원본 속성 X [txt날짜]의 컨트롤 속성 원본 값 (=Date())이 정답(=Now())과 다릅니다.
- switch 함수에 빈칸으로 두라는 조건이 있으면 아무것도 없이 그냥 넘겨야하나요? 제가 한 방식으로 하면 오답 처리가 되나요? ""도 공백인 건 같고, true도 나머지 값을 의미하는 건 똑같은데, 왜 틀린건지 모르겠습니다.
- date랑 now가 서로 다른 함수이고 출력하는 것도 다른 건 알고 있습니다. 그런데 둘다 결과는 똑같이 나오는데, 왜 now가 아니면 안되는 건가요? 이건 시험장에서도 틀렸다고 할 것 같아서 미리 여쭤봅니다.
안녕하세요. 두 경우는 성격이 조금 다릅니다.
1. Switch의 True,""는 넣어도 결과상 문제는 없지만, 정답과 완전히 같은 식은 아닙니다.
정답:
=Switch([성적]>=90,"장학",[성적]>=80,"우등")작성:
=Switch([성적]>=90,"장학",[성적]>=80,"우등",True,"")Switch는 참인 조건이 하나도 없으면 Null을 반환합니다. 따라서 정답에서는 80점 미만이면 Null이 되어 화면상 아무것도 표시되지 않습니다.
작성하신 식에서는 80점 미만이면 True에 걸려 **빈 문자열 ""**을 반환합니다.
화면에서는 둘 다 빈칸처럼 보이지만,
- 정답 →
Null - 작성식 → 길이가 0인 문자열
""
로 내부 값은 다릅니다.
따라서 문제에서 단순히 **“그 외에는 아무것도 표시하지 않는다”**고 하고 정답이 Switch의 기본 동작을 이용했다면, 시험 대비에서는 True,""를 추가하지 않는 것이 안전합니다. 자동 채점에서 식 자체가 다르다고 판정한 이유도 이것입니다.
2. Date()와 Now()는 결과가 같아 보이더라도 동일하지 않습니다.
Date() → 현재 날짜만
Now() → 현재 날짜 + 현재 시간예를 들어 현재가 2026-08-24 오전 9:30이라면 내부적으로는 대략
Date() → 2026-08-24 00:00:00
Now() → 2026-08-24 09:30:00입니다.
컨트롤의 표시 형식이 날짜만 보여주도록 되어 있다면 둘 다 화면에는 2026-08-24처럼 보여서 같아 보일 뿐입니다.
따라서 문제에서 **“현재 날짜”**만 요구하고 함수 지정이 없다면 Date()도 논리적으로 가능합니다. 하지만 **“현재 날짜와 시간” 또는 현재 시각까지 포함하는 의미라면 반드시 Now()**를 사용해야 합니다.
이번 문제에서 지문이 정말 ‘현재 날짜를 표시하시오’라고만 되어 있고 함수도 지정하지 않았다면, Date()가 기능적으로 틀렸다고 단정하기 어렵습니다. 반대로 지문에서 Now 함수를 지정했거나 날짜와 시간을 요구했다면 Date()는 오답입니다.
즉, Switch는 Null과 ""이라는 내부적인 차이가 있고, Date와 Now는 시간값 포함 여부라는 실질적인 차이가 있습니다. 화면에 똑같이 보인다는 것만으로 항상 동일한 답은 아닙니다.
즐거운 하루 되세요.
-
관리자2026-08-24 10:14:56
안녕하세요. 두 경우는 성격이 조금 다릅니다.
1.
Switch의True,""는 넣어도 결과상 문제는 없지만, 정답과 완전히 같은 식은 아닙니다.정답:
=Switch([성적]>=90,"장학",[성적]>=80,"우등")작성:
=Switch([성적]>=90,"장학",[성적]>=80,"우등",True,"")Switch는 참인 조건이 하나도 없으면 Null을 반환합니다. 따라서 정답에서는 80점 미만이면 Null이 되어 화면상 아무것도 표시되지 않습니다.작성하신 식에서는 80점 미만이면
True에 걸려 **빈 문자열""**을 반환합니다.화면에서는 둘 다 빈칸처럼 보이지만,
- 정답 →
Null - 작성식 → 길이가 0인 문자열
""
로 내부 값은 다릅니다.
따라서 문제에서 단순히 **“그 외에는 아무것도 표시하지 않는다”**고 하고 정답이 Switch의 기본 동작을 이용했다면, 시험 대비에서는
True,""를 추가하지 않는 것이 안전합니다. 자동 채점에서 식 자체가 다르다고 판정한 이유도 이것입니다.2.
Date()와Now()는 결과가 같아 보이더라도 동일하지 않습니다.Date() → 현재 날짜만 Now() → 현재 날짜 + 현재 시간예를 들어 현재가 2026-08-24 오전 9:30이라면 내부적으로는 대략
Date() → 2026-08-24 00:00:00 Now() → 2026-08-24 09:30:00입니다.
컨트롤의 표시 형식이 날짜만 보여주도록 되어 있다면 둘 다 화면에는
2026-08-24처럼 보여서 같아 보일 뿐입니다.따라서 문제에서 **“현재 날짜”**만 요구하고 함수 지정이 없다면
Date()도 논리적으로 가능합니다. 하지만 **“현재 날짜와 시간” 또는 현재 시각까지 포함하는 의미라면 반드시Now()**를 사용해야 합니다.이번 문제에서 지문이 정말 ‘현재 날짜를 표시하시오’라고만 되어 있고 함수도 지정하지 않았다면,
Date()가 기능적으로 틀렸다고 단정하기 어렵습니다. 반대로 지문에서Now함수를 지정했거나 날짜와 시간을 요구했다면Date()는 오답입니다.즉, Switch는 Null과
""이라는 내부적인 차이가 있고, Date와 Now는 시간값 포함 여부라는 실질적인 차이가 있습니다. 화면에 똑같이 보인다는 것만으로 항상 동일한 답은 아닙니다.즐거운 하루 되세요.
- 정답 →