|
* 아래줄에 질문을 작성하세요 >>
Public Sub CommandButton10_Click()
Dim emptyRow As Long
Worksheets("ABC").Activate
emptyRow = WorksheetFunction.CountA(Range("A:A")) + 1
ActiveSheet.Cells(emptyRow, 1).Value = TextBox2.Value
ActiveSheet.Cells(emptyRow, 2).Value = TextBox3.Value
ActiveSheet.Cells(emptyRow, 3).Value = TypeName.Value
ActiveSheet.Cells(emptyRow, 4).Value = ComboBox5.Value
ActiveSheet.Cells(emptyRow, 5).Value = TextBox43.Text
Unload Me
End Sub
TextBox2번을 특정시트 A열값들중이랑 비교했을때 그 셀로 이동하는부분에서 막히는데요
저위에 그대로하면 그냥 맨아래에값에만 들어가는데
A열값 = 텍스트박스2번밸류같으면 해당셀에 위에값들이 들어가는 문을
저의 머리로를 너무 한계라서...도움을 요청합니다.
==============[디레이지님 글에 대한 답변입니다]==============
Public Sub CommandButton10_Click()
Dim r As Long
Worksheets("ABC").Activate
For r = 1 To Rows.Count
' 현재 워크시트의 가장 아래 행(한계값)
' 1행부터 전체 워크시트의 A열을 차례로 검사
' 만일 1행에 제목(표헤드)이 있고 실제 데이터는
' 3행부터라면 여기를 r=3 으로 수정할 것
If IsEmpty(Cells(r, 1)) Or Cells(r, 1).Value = TextBox2.Value Then
' A열 r번째 행 셀이 빈 셀이거나 TextBox2와 일치하하면
' 나머지 항목들을 대입하고 반복 중지(목적 달성했으니까)
Cells(r, 1).Value = TextBox2.Value
' 현재 활성화된 시트의 셀에 대해서는 굳이 ActiveSheet를 지정하지 않아도 됨
Cells(r, 2).Value = TextBox3.Value
Cells(r, 3).Value = TypeName.Value
Cells(r, 4).Value = ComboBox5.Value
Cells(r, 5).Value = TextBox43.Text
Exit For
End If
Next r
Unload Me
End Sub |
|