기초부터 실전까지 VBA 엑셀 28 - UserForm의 텍스트 박스 활용

IT 관련 지식/VBA 공부|2019. 12. 11. 15:54
반응형
728x170

VBA 엑셀 28 - UserForm의 텍스트 박스 활용

 

이번에는 텍스트 박스에 메시지를 입력 후 확인버튼을 누르면

 

입력한 값을 셀에 넣는 프로그래밍을 해보겠습니다.

 

먼저 전에 했던

기초부터 실전까지 VBA 엑셀 27 - UserForm의 Label, TextBox 에서 이어서 하도록 하겠습니다.

 

기초부터 실전까지 VBA 엑셀 27 - UserForm의 Label, TextBox

엑셀 27 - UserForm의 Label, TextBox 이번에는 UserForm에 글자를 새길 수 있는 Label VBA의 TextBox처럼 입력을 받을 수 있는 TextBox를 사용하는 방법에 대해 알아보겠습니다. 1. UserForm에서 Label 생성 Labe..

mmol.tistory.com

라벨, 텍스트 박스, 버튼을 만들줄 모르는 분은 위의 포스팅을 참조해주세요!


1. Userform - OK 버튼 편집

 

먼저 아래와 같이 사용자 양식을 구성해줍니다.

 

그리고 OK 버튼을 두번 클릭하면 다음과 같은 화면으로 넘어갑니다.

 

이 부분의 의미는 "이 버튼을 클릭시 실행할 부분"이라는 의미입니다.

 

그렇기 때문에 OK 버튼을 누르면 이 안쪽의 프로그래밍이 실행됩니다.

 

우리의 목적은 텍스트 상자 안의 내용을 셀로 옮기는 것이기 때문에 다음과 같이 프로그래밍을 합니다.

 

Private Sub CommandButton1_Click()

Cells(1, 1) = Me.TextBox1

End Sub

 

굳이 설명하지 않아도 너무 쉬워서 무슨 말인지 알거라고 생각합니다 ㅎㅎ

 

하지만 딱, 1개 설명하자면

 

Me.TextBox1 이 부분인데요.

 

사실 여러분은 Me.까지면 쳐도 아래와 같은 화면이 나올거라고 생각합니다.

그럼 이 TextBox1은 뭐냐고 질문이 있을건데요.

 

 

이건 TextBox의 오브젝트 명입니다.

 

다시 사용자 양식으로 돌아가서 텍스트 박스를 클릭 후 정보를 보면 TextBox1이라는 오브젝트 명을 볼 수 있을겁니다.

(오브젝트 명은 변경가능합니다!!)

 

이제 이 사용자 양식을 실행시키고 "OK 버튼"을 눌러보면

 

300x250

시트의 "A1"에 입력했던 문장이 입력될 것입니다.

 

하지만, 이것은 Cells(1,1)로 지정했으니 "A1"에만 입력이 가능하겠죠?

 

그래서 조금 응용을 해보겠습니다.

 


2. Userform - OK 버튼을 이용하여 연속입력

다시 사용자 양식으로 돌아갑니다.

 

그리고 "OK'버튼을 더블클릭하여 다시 프로그래밍 화면으로 들어갑니다.

 

그리고 다음과 같이 프로그래밍합니다.

Private Sub CommandButton1_Click()

    Dim lastRow As Long
    
        lastRow = Cells(Rows.Count, 1).End(xlUp).Row + 1
        
        Cells(lastRow, 1) = Me.TextBox1

End Sub

 

잠깐 lasRow부분을 설명하자면

 

1. A열 제일 위에 시트에서 한개씩 내려가면서 기록
2. 이것을 이용하면 For을 쓰지 않고 내려가면서 기록가능
3. 처음에 lastRow를 숫자(As long)으로 지정했기에 가능

 

이렇게 하면 "OK"버튼을 누를 때마다 자동으로 마지막 행을 찾아서 그곳에 기록합니다.

 

기록의 경우 Cells(lastRow, 1)이기때문에 A열에 기록합니다.

 


오늘은 여기까지입니다~

 

더 많은 VBA 자료를 보고 싶다면 ☜ 여기!!

[IT 관련 지식/VBA 공부] - 기초부터 실전까지 VBA 엑셀1 - 매크로 사용준비

[IT 관련 지식/VBA 공부] - 기초부터 실전까지 VBA 엑셀2 - 모듈 생성과 설정

[IT 관련 지식/VBA 공부] - 기초부터 실전까지 VBA 엑셀3 - Sub, End Sub

[IT 관련 지식/VBA 공부] - 기초부터 실전까지 VBA 엑셀4 - Range 사용법 및 특징

[IT 관련 지식/VBA 공부] - 기초부터 실전까지 VBA 엑셀5 - 셀 지정법(Cells, Rows, Columns)

[IT 관련 지식/VBA 공부] - 기초부터 실전까지 VBA 엑셀6 - Dim 변수선언

[IT 관련 지식/VBA 공부] - 기초부터 실전까지 VBA 엑셀7 - Const 상수 선언

[IT 관련 지식/VBA 공부] - 기초부터 실전까지 VBA 엑셀8 - 반복문 For

[IT 관련 지식/VBA 공부] - 기초부터 실전까지 VBA 엑셀9 - 반복문 Do ~ Loop

[IT 관련 지식/VBA 공부] - 기초부터 실전까지 VBA 엑셀10 - 마지막 행 얻기(End)

등등

 

사용자폼(UserForm)에 대한 VBA 자료를 보고 싶다면 ☜ 여기!!

[IT 관련 지식/VBA 공부] - 기초부터 실전까지 VBA 엑셀 25 - UserForm

[IT 관련 지식/VBA 공부] - 기초부터 실전까지 VBA 엑셀 26 - UserForm 명령단추

 

일본에서 이야기하는 한국뉴스!

[일본 뉴스] - 일본 뉴스 분석 - 日 주요 언론, 조속한 한일 정상회담 개최 촉구

[일본 뉴스] - 일본 뉴스 분석 - 아베, 이 총리에게도 "국가간 약속지켜야" 거듭 억지

 

직장인인데 일본에서 친구를 만들고 싶다고요? 👈Click!

반응형

댓글()