책 내용 질문하기
온라인 채점 결과 문의
도서
2026 시나공 컴퓨터활용능력 1급 실기 기출문제집
페이지
0,149
조회수
35
작성일
2026-09-02
작성자
신*연

2026_최신기출유형_05회

-3. 프로시저 작업 5/15

-조회 프로시저 X cmd조회_Click이 없습니다.

-종료 프로시저 X Worksheet_Change이 없습니다.

-----

05회 기타작업 3번의 Worksheet_Change 이벤트 프로시저를 Sheet8(기타작업-2) 코드 창에 작성하고, 매크로 사용 통합 문서(.xlsm)로 저장 후 재업로드·재채점을 여러 차례 진행했습니다.

작성 코드는 다음과 같습니다.

Private Sub Worksheet_Change(ByVal Target As Range)
Target.Activate
Target.Font.Name = "굴림"
Target.Font.Size = 13
End Sub

문제 지시사항과 일치하는데도 채점 결과에 “Worksheet_Change이 없습니다”라고 표시됩니다. 확인 부탁드립니다.

답변
2026-09-02 19:10:46

안녕하세요.

첨부 화면을 보면 Worksheet_Change 프로시저는 실제로 Sheet8(기타작업-2) 코드 모듈에 정상적으로 존재합니다.

Private Sub Worksheet_Change(ByVal Target As Range)
    Target.Activate
    Target.Font.Name = "굴림"
    Target.Font.Size = 13
End Sub

따라서 화면에 보이는 코드 자체 때문에 채점기가 "Worksheet_Change이 없습니다"라고 판단한 것은 아닙니다. 이 메시지는 보통 채점기가 기대하는 위치와 실제 프로시저가 들어 있는 위치가 다를 때 발생합니다.

특히 화면을 보면 통합문서에는 다음 시트가 있습니다.

Sheet1 (기타작업-3)
...
Sheet7 (기타작업-1)
Sheet8 (기타작업-2)

Worksheet_Change는 현재 Sheet8(기타작업-2) 안에 있습니다. 그런데 해당 문제의 지시사항에서 이벤트 프로시저를 작성하라고 한 대상이 실제로 어느 시트인지를 다시 확인할 필요가 있습니다. Worksheet_Change는 일반 모듈에 넣는 매크로가 아니라 해당 워크시트 개체의 이벤트 프로시저이므로, 코드 내용이 완벽해도 다른 시트 모듈에 작성하면 채점 프로그램은 “없음”으로 판정합니다.

또한 채점 결과가

조회 프로시저 X cmd조회_Click이 없습니다.
종료 프로시저 X Worksheet_Change이 없습니다.

라고 동시에 나오는 점도 중요합니다. cmd조회_Click은 보통 사용자 폼 코드 모듈에 있어야 하고, Worksheet_Change지정된 워크시트 코드 모듈에 있어야 합니다. 따라서 이번에는 코드 문법보다는 각 프로시저가 채점기가 요구하는 개체 모듈에 들어 있는지를 먼저 확인하는 것이 맞습니다.

그리고 화면 아래에 자동으로 생긴

Private Sub Worksheet_SelectionChange(ByVal Target As Range)

End Sub

는 빈 이벤트이므로 Worksheet_Change 채점과는 관계가 없습니다. 삭제해도 되고 그대로 두어도 기능상 문제는 없습니다.

따라서 현재 화면만 기준으로는 Worksheet_Change 코드 작성 자체는 정상입니다. 다음으로 확인해야 할 핵심은 05회 기타작업-3의 해당 문제 원문에서 Worksheet_Change를 어느 시트에 작성하라고 했는지입니다. 그 문제 지시사항이나 05회 파일 자체를 올려주시면 제가 시트 위치까지 대조해서 왜 채점 프로그램이 “없음”으로 읽는지 정확히 짚어드릴 수 있습니다.

즐거운 하루 되세요.

  • 관리자
    2026-09-02 19:10:46

    안녕하세요.

    첨부 화면을 보면 Worksheet_Change 프로시저는 실제로 Sheet8(기타작업-2) 코드 모듈에 정상적으로 존재합니다.

    Private Sub Worksheet_Change(ByVal Target As Range)
        Target.Activate
        Target.Font.Name = "굴림"
        Target.Font.Size = 13
    End Sub

    따라서 화면에 보이는 코드 자체 때문에 채점기가 "Worksheet_Change이 없습니다"라고 판단한 것은 아닙니다. 이 메시지는 보통 채점기가 기대하는 위치와 실제 프로시저가 들어 있는 위치가 다를 때 발생합니다.

    특히 화면을 보면 통합문서에는 다음 시트가 있습니다.

    Sheet1 (기타작업-3)
    ...
    Sheet7 (기타작업-1)
    Sheet8 (기타작업-2)

    Worksheet_Change는 현재 Sheet8(기타작업-2) 안에 있습니다. 그런데 해당 문제의 지시사항에서 이벤트 프로시저를 작성하라고 한 대상이 실제로 어느 시트인지를 다시 확인할 필요가 있습니다. Worksheet_Change는 일반 모듈에 넣는 매크로가 아니라 해당 워크시트 개체의 이벤트 프로시저이므로, 코드 내용이 완벽해도 다른 시트 모듈에 작성하면 채점 프로그램은 “없음”으로 판정합니다.

    또한 채점 결과가

    조회 프로시저 X cmd조회_Click이 없습니다.
    종료 프로시저 X Worksheet_Change이 없습니다.

    라고 동시에 나오는 점도 중요합니다. cmd조회_Click은 보통 사용자 폼 코드 모듈에 있어야 하고, Worksheet_Change지정된 워크시트 코드 모듈에 있어야 합니다. 따라서 이번에는 코드 문법보다는 각 프로시저가 채점기가 요구하는 개체 모듈에 들어 있는지를 먼저 확인하는 것이 맞습니다.

    그리고 화면 아래에 자동으로 생긴

    Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    
    End Sub

    는 빈 이벤트이므로 Worksheet_Change 채점과는 관계가 없습니다. 삭제해도 되고 그대로 두어도 기능상 문제는 없습니다.

    따라서 현재 화면만 기준으로는 Worksheet_Change 코드 작성 자체는 정상입니다. 다음으로 확인해야 할 핵심은 05회 기타작업-3의 해당 문제 원문에서 Worksheet_Change를 어느 시트에 작성하라고 했는지입니다. 그 문제 지시사항이나 05회 파일 자체를 올려주시면 제가 시트 위치까지 대조해서 왜 채점 프로그램이 “없음”으로 읽는지 정확히 짚어드릴 수 있습니다.

    즐거운 하루 되세요.

· 5MB 이하의 zip, 문서, 이미지 파일만 가능합니다.
· 폭언, 욕설, 비방 등은 관리자에 의해 경고없이 삭제됩니다.