책 내용 질문하기
필기 2권 7장 매크로 작성과 vba 프로그래밍 예상문제은행 24번 문제 질문입니다.
도서
[2015] 컴퓨터활용능력 1급 필기
페이지
276
조회수
119
작성일
2015-08-15
작성자
첨부파일

프로시저에 대해 이해하고 푸는 문제인데요. 사용자 정의 폼에서 3개의 텍스트 상자에 데이터를 입력하고, '입력' 버튼을 클릭하면 현재 워크시트에 데이터가 입력되도록 작성한 프로시저입니다. 그림은 책을 보시면 B2 셀부터 D2셀까지 구분, 도서명, 가격 이라고 써져있어요.

지문의 프로시저를 그대로 가져와보면

Sub Cinput_Click()

Dim intRow As Integer

intRow = Range("B1").CurrentRegion.Rows.Count

With Range("B1")

.Offset(intRow, 0) = txtDis

.Offset(intRow, 1) = txtBook

.Offset(intRow, 2) = Val(txtPri)

End With

txtDis = "" : txtBook = "" : txtPri = ""

End Sub

이렇게 인데, 문제 오지선다형 중 1번에

intRow = Range("B1").CurrentRegion.Rows.Count는 [B1] 셀을 기준으로 처음 Count의 값은 2이다.

라고 나와있어요. 근데 이해가 잘 안되는게 CurrentRegion은 지정된 셀과 연결된 범위이잖아요. 저는 이걸 그 셀의 근처에 데이터 값이 입력된 셀들을 범위로 다 지정한다는 의미로 이해했어요. 그러면 b1 셀 근처에 위에 구분, 도서명, 가격이라고 써져있는 셀까지 다 범위로 지정이 되는 것인데. 문제에서는 Count 값은 3이 아닌 2가 맞다고 나와있거든요. ㅠㅠ 제가 잘못 이해한 부분이 있는 것 같은데 설명해주세요 ㅠㅠ 그리고 intRow라는 것은 함수 int와 행을 뜻하는 row의 합성어인가요???

답변
2015-08-18 09:12:02

안녕하세요.

CurrentRegion은 지정된 셀과 연결된 범위이고, Rows는 행을 의미하는 것입니다. 그러므로 CurrentRegion.Rows.Count는 지정된 셀과 연결된 범위 중 행의 수를 구하게 됩니다. b1 셀과 연결된 데이터 범위는 b1: d2이고, 이 범위에서 행 수는 2입니다.

intRow는 임의로 지정한 변수 이름입니다.

즐거운 하루 되세요.

  • *
    2015-08-18 09:12:02

    안녕하세요.

    CurrentRegion은 지정된 셀과 연결된 범위이고, Rows는 행을 의미하는 것입니다. 그러므로 CurrentRegion.Rows.Count는 지정된 셀과 연결된 범위 중 행의 수를 구하게 됩니다. b1 셀과 연결된 데이터 범위는 b1: d2이고, 이 범위에서 행 수는 2입니다.

    intRow는 임의로 지정한 변수 이름입니다.

    즐거운 하루 되세요.

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