본문 바로가기
컴활 1급 실기 벼락치기 일기

컴활 실기 스프레드시트 공부기록 | 사용자 정의함수, 매크로, 프로시저

by 레베롭 2023. 1. 29.
반응형

컴활 1급 실기 스프레드시트 공부기록

사용자 정의함수

[개발도구] - [코드] - [Visual Basic] - [삽입] - [모듈]

 

1. IF 구문

if 조건 Then
	명령문1
Else
	명령문2
End If

2. For문

For 반복변수 = 시작값 To 최종값
	실행문
Next 반복변수

3. Select문

Select Case 변수
	Case is 조건1
    실행1
    Case is 조건2
    실행2
    Case Else
    실행3
End Select

 

매크로

[개발도구] - [코드] - [매크로 기록]

* 매크로 삭제하는 법 : [매크로] - [삭제]

 

프로시저 작성(VBE)

[개발도구] - [코드] - [Visual Basic] (Alt + F11)

종료하는 법 : [파일] - [닫고 Microsoft Excel로 돌아가기] / X 버튼 누르기 / Alt + F11

 

1. 프로시저

Sub 프로시저명
	처리구문
End Sub

활성화 Private Sub object_Activate()

비활성화 Private Sub object_Deactivate()

 

예)

Private Sub UserForm_Initialize()
	cmb부서명.RowSource = "H3:H7"
End Sub

해설 :  폼이 활성화 되면 프로시저 실행

cmb부서명 목록단추의 원본을 H3:H7 영역으로 지정

마침

 

예)

Private Sub cmbFrm사원입력_Click()
	Dim i As integer
    
    i = Range("B3").CurrentRegion.Rows.Count + 3
    Cells(i,2) = cmb부서명
    Cells(i,3) = txt사원명
    Cells(i,4) = txt입사일자.Value
End Sub

해설 : 사원 입력 폼을 클릭하였을 때

"i" 라는 변수를 선언함

i는 (B3)셀과 연결된 범위에 있는 데이터 범위의 행의 수에 3을 더해서 행의 위치로 반환

즉, 정보를 입력하였을 때 마지막에 입력되어있는 셀  다음부터 내용이 입력될 수 있도록 함.

CurrentRegion : 지정된 셀과 연결된 범위

Rows : 범위의 행

Count : 개수

i행 2열 셀 = cmb부서명에 매치되는 데이터 입력

i행 3열 셀 = txt사원명에 매치되는 데이터 입력

i행 4열 셀 = txt입사일자에 매치되는 데이터를 숫자로 반환하여(Value) 데이터 입력

 

Unload Me : 현재 폼을 화면과 메모리에서 제거

 

댓글