책 내용 질문하기
질문
도서
[2013] 컴퓨터활용능력 1급 실기(엑셀, 액세스 2007 사용자용)
페이지
457
조회수
26
작성일
2013-07-08
작성자
첨부파일

매크로 작성문제에서요

c9셀에 c6셀과 동일하게 입력하라고 했는데

왜 동일하게 입력해야하나요?? 그리고무조건 c9셀에 입력해야하는건가요?ㅠ

p.458 vba문제에서요

조회버튼 프로시저 작성할 때 count-1 되어있는데

이때까지 다른문제에서는 count뒤에 -1 붙는 문제가 없었는데

어떤 경우에 쓰는건가요?

(기준행 제외하고, 순수하게 데이터 범위의 행수를 구하기 위한 것이란 건 알겟는데요..)

답변
2013-07-08 19:39:46

매크로 작성문제는 페이지가 없어서 답변을 어떻게 해야할 지 모르겠스빈다.

vba문제는요

입력행=[b3].row 까지 하면 현재 행의 수가 나오죠

즉 3이 되는 겁니다.

그리고 [b3].currentregion.rows.count를 하면 연속되어있는 셀 수가 나옵니다.

이게 경우에 따라서 계산을 해보면 현재 표에 모두 연결되어있는 행이 데이터만 있을 때는 제목아래 데이터가 3개가 있다하면 4라고 나오거든요 그럼 3+4가 되어서 7이 되죠

이럴땐 문제 없이 괜찮습니다.

그런데 데이터가 있는 표바로 위의 셀에 날짜라든지 표에 대한 title이라든지(ex>여름휴가 분석) 요런애들이 붙어있으면 5가 나오게 되요 [b3]번 위에 1개, [b3]1개, [b3]아랫쪽으로 데이터가 3개 합치면 5개죠...

그럼 3+5가 되어서 8이 되어버리죠

이런 표는 6번까지 데이터가 입력되어있기 때문에 7번에 새로운 데이터가 들어가야하거든요

이럴때 -1을 해야합니다.

그리고 대부분의 경우는 조회를 할때는 마지막에 있는 데이터를 불러와야 하기 때문에 새로운 셀의 위치가 나오면 안되는 거죠

위의 계산식은 항상 새로운 셀로 가는 계산식입니다.

그럼 새로운 셀 바로 위에 마지막 데이터가 있기 때문에 그럴때 -1을 하게 됩니다......

답이 좀 어수선 하군요...죄송합니다.

  • *
    2013-07-08 19:39:46

    매크로 작성문제는 페이지가 없어서 답변을 어떻게 해야할 지 모르겠스빈다.

    vba문제는요

    입력행=[b3].row 까지 하면 현재 행의 수가 나오죠

    즉 3이 되는 겁니다.

    그리고 [b3].currentregion.rows.count를 하면 연속되어있는 셀 수가 나옵니다.

    이게 경우에 따라서 계산을 해보면 현재 표에 모두 연결되어있는 행이 데이터만 있을 때는 제목아래 데이터가 3개가 있다하면 4라고 나오거든요 그럼 3+4가 되어서 7이 되죠

    이럴땐 문제 없이 괜찮습니다.

    그런데 데이터가 있는 표바로 위의 셀에 날짜라든지 표에 대한 title이라든지(ex>여름휴가 분석) 요런애들이 붙어있으면 5가 나오게 되요 [b3]번 위에 1개, [b3]1개, [b3]아랫쪽으로 데이터가 3개 합치면 5개죠...

    그럼 3+5가 되어서 8이 되어버리죠

    이런 표는 6번까지 데이터가 입력되어있기 때문에 7번에 새로운 데이터가 들어가야하거든요

    이럴때 -1을 해야합니다.

    그리고 대부분의 경우는 조회를 할때는 마지막에 있는 데이터를 불러와야 하기 때문에 새로운 셀의 위치가 나오면 안되는 거죠

    위의 계산식은 항상 새로운 셀로 가는 계산식입니다.

    그럼 새로운 셀 바로 위에 마지막 데이터가 있기 때문에 그럴때 -1을 하게 됩니다......

    답이 좀 어수선 하군요...죄송합니다.

  • *
    2013-07-09 09:59:06

    동일한 식을 입력 하셔야 이식에서 면접과 필기의 반영비율에 따른 가중평균을 구할 수 있습니다.

    값이 변경될때 가중평균이 어떻게 변하는지 알기 위한 것이죠.

    쉽게 설명 한다면

    입력행=[a3].row+[a3].currentregion.count

    은 입력 버튼, 즉 컨트롤에 입력된 값을 마지막 셀뒤에 입력 할때 사용 하는 것이구요.

    입력행=[a3].row+[a3].currentregion.count -1

    은 조회 버튼, 즉 셀에 입력된 값의 마지막 데이터를 조회할때 사용 하는 것입니다.

    [a3].row 는 a3의 행위치를 나타내므로 3이 나오구요.

    [a3].currentregion.rows.count 는 a3부터 입력되어 있는 값들의 개수를 세게 됩니다.

    a3부터 3줄의 데이터가 있다면 이 값은 3이 되고

    3+3 이 되어 6 행이 되는 것이죠. (필드명 포함해서 입니다. 필드명부터 4줄이라면 4를 더해주셔야 합니다.)

    즉 6번행부터 입력하게 합니다.

    이것은 마지막 데이터 다음줄에 값을 입력 하는 입력 프로시저에 사용하는 것이고

    여기에 -1 을 하신다면 마지막 줄을 조회하여 폼에 나타나게 하는 조회 프로시저를 작성 하는 것입니다.

    이름=cells(입력행,1)

    과 같이 나타내는 것은 이름에 셀에 입력된 값을 입력 하라는 것으로 셀에 입력된 값을 폼에 입력하게 하는

    조회 하실때 사용하는 것이구요.

    cells(입력행,1)=이름

    은 셀에 폼의 컨트롤에 입력된 이름 값을 셀에 입력 하라는 것으로

    입력 프로시저를 작성할 때 사용하는 것입니다.

    프로시저에서 =은 같다가 아니라

    오른쪽에 있는 데이터를 왼쪽으로 넣는다 라는 개념으로 생각 하셔야 합니다.

    입력행 = [a3].row + [a3].currentregion.rows.count -1

    이름=cells(입력행,1)

    과 같이 작성하시면 조회를 하는 프로시저이고

    입력행 = [a3].row + [a3].currentregion.rows.count

    cells(입력행,1)=이름

    으로 작성하시면 셀에 입력하는 입력 프로시저가 되는 것입니다.

    좋은 하루 되세요.

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