■ Excel/ㅡExcel VBA Study
엑셀 vba 유저폼 리스트 박스에서 다른 리스트 박스로 복사
with seok
2020. 6. 30. 12:40
엑사남님의 강의 29강 따라하기 |
엑셀 파일 다운로드 |
Private Sub UserForm_Initialize() Dim intEndRow As Integer Dim rngList As Range intEndRow = Range("B10000").End(xlUp).Row Set rngList = Range("B3:K" & intEndRow) With Me.ListBox1 .RowSource = rngList.Address .ColumnCount = 10 .ColumnHeads = True .ColumnWidths = "40;30;40;30;25;30;30;30;60;40;" .TextAlign = fmTextAlignCenter End With With Me.ListBox2 .ColumnCount = 10 .ColumnWidths = "40;30;40;30;25;30;30;30;60;40;" .TextAlign = fmTextAlignCenter End With End Sub |
Private Sub CommandButton1_Click() Dim nIndex As Integer Dim LB_1, LB_2 As Control Dim nTemp As Integer Set LB_1 = Me.ListBox1 '객체는 set Set LB_2 = Me.ListBox2 nIndex = LB_1.ListIndex If nIndex = -1 Then Exit Sub '선택하지 않으면 종료 With LB_2 '.Clear nTemp = LB_2.ListCount .AddItem LB_1.List(0, 0) '이 줄을 추가하지 않으면 아래 작동안함 '데이터를 받을 수 있는 임의의 한 줄을 추가 '시작은 0행 부터임. 0,1,2,.... .List(nTemp, 0) = LB_1.List(nIndex, 0) .List(nTemp, 1) = LB_1.List(nIndex, 1) .List(nTemp, 2) = LB_1.List(nIndex, 2) .List(nTemp, 3) = LB_1.List(nIndex, 3) .List(nTemp, 4) = LB_1.List(nIndex, 4) .List(nTemp, 5) = LB_1.List(nIndex, 5) .List(nTemp, 6) = LB_1.List(nIndex, 6) .List(nTemp, 7) = LB_1.List(nIndex, 7) .List(nTemp, 8) = Format(LB_1.List(nIndex, 8), "yyyy-mm-dd") .List(nTemp, 9) = Format(LB_1.List(nIndex, 9), "#,##0") '세 자리 마다 콤마, 0이면 0 End With End Sub |
Private Sub CommandButton2_Click() Me.ListBox2.Clear End Sub |
Private Sub CommandButton3_Click() Unload Me End Sub |
728x90