분명히 표값이 b4행부터 표시되어있는데요. 왜 비쥬얼베이직(엑셀)에서
입력행 = [a4].Row + [a4].CurrentRegion.Rows.Count
입력행 값을 a4부터 잡아주는지 모르겠네요..;; 뭐 답이 그렇게 나와있는것도 확인했고 a4도 넣어보고 b4도 넣어봤는데
a4에서만 실행이 되는데 도대체 이해는 안되네요.;; 그냥 외우고 넘어가려고 했지만 저번에도 이런문제 나왔는데 외운데로
푸니깐 틀리드라구요. 왜 그런거죠?
그리고 참조행은 대충이해가 가는데 비쥬얼베이직에서
참조행 = list강좌.ListIndex
Cells(입력행, 4) = list강좌.List(참조행, 0)
→ 이렇게 기입되어 있으면 list강좌에서 클릭되는 행에 따라서 참조행이 결정되는거 맞죠?
예를 들어 list강좌표에서 두번째행의 아무값이나 클릭하게 되면 두번째행에 포함된 셀이 (1,0)이 표현되는거죠.
맞나요?;; 두서없이 말해서 죄송한데 답변좀...졸 헷갈림..ㅠ
마지막으로 p.297에 ※데이터를 추가하거나 삭제하여도 항상 마지막 데이터가 표시되어야 함 이라고 되어있는데
답에는 '입력행 = [a3].Row + [a3].CurrentRegion.Rows.Count - 1' 이렇게 나와있는데 이렇게 입력하면 마지막행이 표시되는것이 아니라 마지막행이 사라지고 새로운 값이 입렵되던데 뒤에 -1을 빼야 되는것이 아닌가요? 몇번 테스트해봤는데 계속 그렇게 나오던데요... 이것도 답변좀 부탁좀
p.s 참고로 제 메일주소 바꼈어요.;; rascalhoon@naver.com
1. b4 든 a4 든 같은 행이기 때문에 같은 결과가 나와야 합니다.
혼동 되신다면 b4로 사용하시면 되세요.
2. 네 맞습니다.
3. -1 을 하는 것은 조회할때 입니다.
질문 주신 문제는 입력하는 문제가 아니라 조회하는 문제입니다.
아래 설명을 참고해 주세요.
입력행=[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)=이름
으로 작성하시면 셀에 입력하는 입력 프로시저가 되는 것입니다.
좋은 하루 되세요.
-
*2014-03-19 11:50:02
1. b4 든 a4 든 같은 행이기 때문에 같은 결과가 나와야 합니다.
혼동 되신다면 b4로 사용하시면 되세요.
2. 네 맞습니다.
3. -1 을 하는 것은 조회할때 입니다.
질문 주신 문제는 입력하는 문제가 아니라 조회하는 문제입니다.
아래 설명을 참고해 주세요.
"입력행=[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)=이름
으로 작성하시면 셀에 입력하는 입력 프로시저가 되는 것입니다.
좋은 하루 되세요.