다소 헷갈리는 부분이 있어 질문드립니다.
'<입력> 버튼 클릭 프로시저'의 해설을 보면
If IsNull(lst신상목록) Then
MsgBox "신상목록을 선택하지 않았습니다."
lst신상목록.listindex = 0
Else
참조행 = lst신상목록.ListIndex
입력행 = [a3].Row + [a3].CurrentRegion.Rows.Count
Cells(입력행, 1) = lst신상목록.List(참조행,0)
Cells(입력행, 2) = lst신상목록.List(참조행,1)
Cells(입력행, 3) = 전화번호
Cells(입력행, 4) = 등급
End If
이렇게 되어있습니다.
질문1
문제에서 List와 Listindex 속성을 사용하여 작성하라고 하였으므로 위와 같이 작성이 된것 같지만, 만약
List속성을 사용하지 않고, Listindex 속성만 사용하라는 이야기가 나오면
참조행 = lst신상목록.ListIndex
입력행 = [a3].Row + [a3].CurrentRegion.Rows.Count
Cells(입력행, 1) = lst신상목록.column(0)
Cells(입력행, 2) = lst신상목록.column(1)
Cells(입력행, 3) = 전화번호
Cells(입력행, 4) = 등급
이렇게 작성해도 무방한가요??
질문2
문제에서 보면 폼이 초기화될때 이미 lst신상목록에 대해서 자료근원을 설정하였기 때문에
Listindex + 5와 같이 행번호를 표기하지 않고 단순히 Listindex만 작성하는게 옳은건가요??
안녕하세요.
List가 지시사항에 없다면, 적어주신대로 작성하셔도 결과는 동일합다.
하지만, 적어주신 대로 입력하시면 '참조행' 변수는 필요가 없게됩니다.
그렇게되면 ListIndex도 사용하지 못하게 될 것 같습니다.
lst신상목록.RowSource의 "F4:G8' 행 원본은 ListIndex로 가져올 데이터를 설정하는 것입니다.
listindex는 목록상자나 콤보상자에서 특정 행을 추출할 때 사용되거사
워크 시트의 셀 안의 내용을 가져올 때 사용하게 됩니다.
예1)
참조행 = lst과목.ListIndex
입력행 = [a2].Row + [a2].CurrentRegion.Rows.Count
Cells(입력행, 1) = txtID
Cells(입력행, 2) = txt이름
Cells(입력행, 3) = lst과목.List(참조행, 0)
Cells(입력행, 4) = lst과목.List(참조행, 1)
여기에서 참조행에 lst과목.listindex 라고 정의해 두고
lst과목.list(참조행,0) 으로 사용 하고 있습니다.
이것은 참조행이 어디인지 지정해 놓고 lst과목에서 참조행의 위치와 0인.. 그러니깐 참조행이 만약 2이고 찾고자하는 것이 0행에 있다는 그런 뜻이 됩니다. 폼안의 list박스내의 자료를 찾아서 셀에 입력 하는 것입니다.
예2)
참조행 = lst열차종류.listindex + 4
입력행 = [a3].row + [a3].currentregion.rows.count
cells(입력행, 1) = txt번호
cells(입력행, 2) = cells(참조행, 8)
cells(입력행, 3) = cells(참조행, 9)
이 문장에서는 lst열차종류에서 참조되는 행의 위치를 이미 지정하였습니다. 그리고 사용 할때는 8,9와 같이 엑셀에서 위치하는 열을 미리 적어 둔 것입니다.
워크시트에서 참조표가 있는 곳의 위치를 지정하여 입력할 데이터를 확인 하는 것입니다.
좋은 하루 보내세요.
-
*2018-08-20 10:19:27
안녕하세요.
List가 지시사항에 없다면, 적어주신대로 작성하셔도 결과는 동일합다.
하지만, 적어주신 대로 입력하시면 '참조행' 변수는 필요가 없게됩니다.
그렇게되면 ListIndex도 사용하지 못하게 될 것 같습니다.
lst신상목록.RowSource의 "F4:G8' 행 원본은 ListIndex로 가져올 데이터를 설정하는 것입니다.
listindex는 목록상자나 콤보상자에서 특정 행을 추출할 때 사용되거사
워크 시트의 셀 안의 내용을 가져올 때 사용하게 됩니다.
예1)
참조행 = lst과목.ListIndex
입력행 = [a2].Row + [a2].CurrentRegion.Rows.Count
Cells(입력행, 1) = txtID
Cells(입력행, 2) = txt이름
Cells(입력행, 3) = lst과목.List(참조행, 0)
Cells(입력행, 4) = lst과목.List(참조행, 1)여기에서 참조행에 lst과목.listindex 라고 정의해 두고
lst과목.list(참조행,0) 으로 사용 하고 있습니다.
이것은 참조행이 어디인지 지정해 놓고 lst과목에서 참조행의 위치와 0인.. 그러니깐 참조행이 만약 2이고 찾고자하는 것이 0행에 있다는 그런 뜻이 됩니다. 폼안의 list박스내의 자료를 찾아서 셀에 입력 하는 것입니다.예2)
참조행 = lst열차종류.listindex + 4
입력행 = [a3].row + [a3].currentregion.rows.countcells(입력행, 1) = txt번호
cells(입력행, 2) = cells(참조행, 8)
cells(입력행, 3) = cells(참조행, 9)이 문장에서는 lst열차종류에서 참조되는 행의 위치를 이미 지정하였습니다. 그리고 사용 할때는 8,9와 같이 엑셀에서 위치하는 열을 미리 적어 둔 것입니다.
워크시트에서 참조표가 있는 곳의 위치를 지정하여 입력할 데이터를 확인 하는 것입니다.
좋은 하루 보내세요.