엑셀 프로 시저 | 컴활1급실기 20일만에 합격하기(3일차)_프로시저 완벽하게 마스터하기 모든 답변

당신은 주제를 찾고 있습니까 “엑셀 프로 시저 – 컴활1급실기 20일만에 합격하기(3일차)_프로시저 완벽하게 마스터하기“? 다음 카테고리의 웹사이트 https://you.charoenmotorcycles.com 에서 귀하의 모든 질문에 답변해 드립니다: https://you.charoenmotorcycles.com/blog/. 바로 아래에서 답을 찾을 수 있습니다. 작성자 기풍쌤 이(가) 작성한 기사에는 조회수 69,305회 및 좋아요 582개 개의 좋아요가 있습니다.

엑셀 프로 시저 주제에 대한 동영상 보기

여기에서 이 주제에 대한 비디오를 시청하십시오. 주의 깊게 살펴보고 읽고 있는 내용에 대한 피드백을 제공하세요!

d여기에서 컴활1급실기 20일만에 합격하기(3일차)_프로시저 완벽하게 마스터하기 – 엑셀 프로 시저 주제에 대한 세부정보를 참조하세요

컴활1급실기 20일만에 합격하기(3일차)_프로시저 완벽하게 마스터하기
프로시저는 패턴만 익히면 모든 프로시저를 해결할 수 있습니다.
자료 다운로드 : https://blog.naver.com/won2520179/222238409257
3일차 숙제
1. 프로시저 끝내기 시리즈 1탄 : https://youtu.be/S9osBqh3gvA
2. 프로시저 끝내기 시리즈 2탄 : https://youtu.be/SqflWkintV8
3. 프로시저 끝내기 시리즈 3탄 : https://youtu.be/w4s9hH5Vugw

엑셀 프로 시저 주제에 대한 자세한 내용은 여기를 참조하세요.

[컴활] 1급 실기 엑셀(Excel) 프로시저 정리 – Mizys

프로시저 작성 개발도구 > 디자인 모드 > 버튼 더블 클릭 폼이 화면에 나타나도록 프로시저 작성 폼이름.Show 종료 버튼을 클릭하면 폼이 닫히도록 …

+ 여기를 클릭

Source: mizykk.tistory.com

Date Published: 12/28/2021

View: 2971

[엑셀] 컴활 엑셀 기타작업 프로시저 사용 방법 총정리(폼 사용 …

엑셀 폼 프로시저 사용법 컴활 엑셀 공부를 하다보니, 꽤나 많은 사람들이 엑셀 마지막 기타작업의 프로시저와 폼 사용에서 포기를 한다는 것을 알게 …

+ 여기를 클릭

Source: doompa.tistory.com

Date Published: 11/17/2021

View: 2734

엑셀 VBA – Sub 프로시저

엑셀 VBA에서 매크로를 작성할 때 Sub 프로시저를 생성하여 코딩합니다. 이 Sub 프로시저는 VBA 프로시저 중 하나이며 그 외에 이벤트 프로시저, …

+ 여기에 표시

Source: mr-johndoe.tistory.com

Date Published: 1/9/2022

View: 1715

[컴활1급] 엑셀에 잘 나오는 프로시저 정리 – 사부작하루

엑셀에 잘 나오는 프로시저 정리 목록값 입력 – 개체명.additem ” ” (= 없음! 바로 ” ” 작성) – 개체명.rowsource = ” 범위 ” 입력행위치 구하고, …

+ 여기에 보기

Source: woong4.tistory.com

Date Published: 6/7/2021

View: 92

[엑셀] 프로시저 – 취준생 태옹 – Tistory

[엑셀] 프로시저. 태옹 2020. 11. 3. 02:12. 폼 열기. 폼이름.show …

+ 여기에 자세히 보기

Source: taetoungs-branch.tistory.com

Date Published: 8/12/2021

View: 3637

[컴퓨터활용능력 1급 실기] 프로시저 작성 (액셀/스프레드시트)

프로시저(Procedure) : 한 개 이상의 기능을 수행하기 위한 명령문의 … 엑셀에서는 내용에 관계없이 빈 행이 나올 때까지를 하나의 연결된 표로 봄.

+ 여기에 자세히 보기

Source: starrykss.tistory.com

Date Published: 10/29/2022

View: 4683

주제와 관련된 이미지 엑셀 프로 시저

주제와 관련된 더 많은 사진을 참조하십시오 컴활1급실기 20일만에 합격하기(3일차)_프로시저 완벽하게 마스터하기. 댓글에서 더 많은 관련 이미지를 보거나 필요한 경우 더 많은 관련 기사를 볼 수 있습니다.

컴활1급실기 20일만에 합격하기(3일차)_프로시저 완벽하게 마스터하기
컴활1급실기 20일만에 합격하기(3일차)_프로시저 완벽하게 마스터하기

주제에 대한 기사 평가 엑셀 프로 시저

  • Author: 기풍쌤
  • Views: 조회수 69,305회
  • Likes: 좋아요 582개
  • Date Published: 실시간 스트리밍 시작일: 2021. 2. 10.
  • Video Url link: https://www.youtube.com/watch?v=ljUMzxQWx2s

[컴활] 1급 실기 엑셀(Excel) 프로시저 정리

[컴활] 1급 실기 엑셀(Excel) 프로시저 정리

프로시저 작성

개발도구 > 디자인 모드 > 버튼 더블 클릭

폼이 화면에 나타나도록 프로시저 작성

폼이름.Show

종료 버튼을 클릭하면 폼이 닫히도록

Unload Me

셀에 값 입력

Cells(행, 열)

문자열을 숫자로(계산할 때)

Val(txt어쩌구)

데이터를 추가하거나 삭제하여도 항상 마지막 데이터 다음에 입력

Range(“내용이 시작하는 위치”).CurrentRegion.Rows.Count + 시작하는 위치의 행 번호

표 위에 글이 붙어있을 경우 표만 있을 경우

ex) Range(“B3”).CurrentRegion.Rows.Count + 3

폼이 초기화되면

Private Sub UserForm_Initialize()

End Sub

[H5:H10] 영역의 값이 콤보상자(cmb콤보)/목록상자(Lst목록)의 목록에 나타나도록 설정

cmb콤보.RowSource = “H5:H10”

Lst목록.RowSource = “H5:H10”

ColumnCount를 이용하여 지정한 열이 모두 보이도록

Lst목록.ColumnCount = 5

[B10] 셀에 “어쩌구저쩌구” 문자열이 출력

Range(“B10”) = “어쩌구저쩌구”

입력상자들이 비어있도록

cmb콤보상자 = “”

txt텍스트 = “”

목록상자(Lst목록)는 첫 번째 항목이 선택되어 있도록

Lst목록.ListIndex = 0

목록상자(Lst목록)에서 선택된 값 입력

Lst목록.List(Lst목록.ListIndex, 몇 번째)

→ 목록상자의 첫번째는 0임.

→ 목록상자의 1행 1열 항목은 Lst목록.List(Lst목록.ListIndex, 0)

콤보상자(cmb콤보)에는 ‘a’, ‘b’가 목록으로 추가되도록

cmb콤보.AddItem “a”

cmb콤보.AddItem “b”

글꼴(Name) / 크기(Size) / 굵게(Bold)

Target.Font.Name = “글꼴”

Target.Font.Size = 10

Target.Font.Bold = True

번호는 스핀단추를 통해 입력하도록

Private Sub Spin번호_Change()

Text번호 = Spin번호

End Sub

“D15″에 오늘 날짜가 나오도록

Range(“D15”) = Date

날짜 : Date

날짜 + 현재시간 : Now()

현재시간 : Time

메세지상자 “내용”, , “제목”

MsgBox “Message”, , “Title”

옵션단추 (Caption 이용)

opt단추.caption

형식지정

Format(txt가격, “#,###”)

728×90

[엑셀] 컴활 엑셀 기타작업 프로시저 사용 방법 총정리(폼 사용, 목록값, 폰트 등)

엑셀 폼 프로시저 사용법

컴활 엑셀 공부를 하다보니, 꽤나 많은 사람들이 엑셀 마지막 기타작업의 프로시저와 폼 사용에서 포기를 한다는 것을 알게 되었다. 사실 포기라기보다는 전략적으로 다른 문제를 더욱 집중적으로 공부해 상대적으로 할 게 많은 (프로시저는 간단한 코딩을 요구한다) 프로시저를 안하는 것일 것이다.

그러나 과연, 엑셀 계산 문제를 공부한다고 해서, 완벽히 백 점을 맞을 수 있을까? 내 생각은 프로시저 작성 문제를 포기하지 말고 조금이라도 외워 부분 점수를 노려 보는 것이 좋겠다는 생각이다.

그런 생각으로 오늘은 엑셀 프로시저 공부 중 정리한 엑셀 기타작업 마지막 문제 프로시저 작성(폼 작성) 방법을 공유한다.

1. 버튼 클릭시 폼 열기

우선은 모두가 알 법한 버튼 클릭시 폼이 열리는 작업이다. 형태는 아래와 같다.

폼이름.Show

예를 들어 버튼을 클릭시 폼1이라는 폼을 열라고 지시한다면

폼1.show

라고 작성하면 된다.

2. 폼의 콤보상자에 값 입력

이제는 꽤나 암기를 필요로 할지도 모르는 작업이다. 폼의 콤보상자에 값이 기본적으로 나오게 하는 작업이다. 기본적으로 나오는 작업은 initialize()에서 작성한다.

1.오늘 날짜로부터 4일 전까지가 <>에 나타나게 하기

특별히 표나 셀을 이용하라는 말이 없다면 Additem이라는 매서드를 이용한다. 사용 방법은 아래와 같다.

개체명.Additme “목록값 1″

개체명.Additme 목록값2”

즉, 정답은 이렇게 될 것이다.

엑셀 목록 입력 예시

해석: cmb계약일에 date, date-1, date-2…를 추가한다.//date함수는 현재 컴퓨터 시스템의 날짜를 반환한다. 따라서 현재날로부터 4일 전까지가 추가된다.

입력 후 폼을 실행해보면 콤보상자에 잘 뜨는 것을 확인 할 수 있다.

엑셀 콤보상자 목록값

2. C5:G8까지의 범위, 표가 <>에 나타나게 하기

범위를 추가하라고 하면 additem메서드 대신 rowsource라는 매서드를 사용한다. 사용 방법은 아래와 같다.

개체명.Rowsource = “A1:A5”

즉, 정답은 이렇게 될 것이다.

cmb계약일.Rowsource = “g5:g8”

*주의

Additem 메서드는 =를 사용하지 않지만 rowsource메서드는 <<=>>를 사용함에 주의!!

3. 입력 버튼 클릭시 폼에 입력된 자료가 표에 나타나게 하기

이번에는 입력이다. 컴활을 공부하는 입장에서 어쩌면 첫번째 난관일지도 모르겠다. 표에 값을 입력하기 위해서는, 우서는 입력할 행의 위치를 구해야한다. 프로시저에서 입력행은 이렇게 구한다.

1. 입력행 구하기

입력행 위치 구하기 : 입력행 = range(“표의 첫 셀”).currentregion.rows.count + @

해석:표의 첫 셀과 연결되어있는 행들의 갯수를 센다

엑셀 입력행 구하기

입력행을 구하려면 기준으로 한 표의 첫셀 주변에 다른 문구가 결합되어 있는지 봐야한다. 그림을 보자. 표의 첫 셀은 b4로 잡을 수 있다. 그러나 바로 위 b3에는 연결된 문구라는 텍스트가 들어있다. 그럴 떄, range(“b4”).currentregion.rows.count를 사용하면 B4셀과 연결 된 셀이 2개이니(B3, B4) 2가 반환된다.

우리가 입력하고자 하는 셀은 B5이다. 즉, 5행이다. 하지만 현재 식으로 반환된 값은 2이다. 그러므로 이를 5로 만들어 주기 위해 +3을 붙인다. 즉 +@부분에 3이 들어간다.

2. 입력행 이용해 표에 값 넣기

이제 입력행을 알았다. Cells(입력행, 입력열)을 이용하여 표에 값을 할당하면 된다. B열의 경우 숫자 2를 넣어 대체 가능하다.

예를 들어 <>에 값을 입력 후 이를 입력행, B5에 넣고자 한다면 해답은 아래와 같다.

Cells(입력행, 2) = txt입력

*주의

주의 예시사진

날짜 입력시 앞 뒤로 #

문자 입력시 앞 뒤로 ”

문자 식 결합시 & 사용(문자와 변수 결합 : 성명 & “님은 할인 대상”)

오늘 날짜 출력 : DATE (액세스와 동일, 액셀의 경우 TODAY()

오늘 날짜와 시간 출력 : NOW(액세스와 동일, 액셀의 경우 NOW())

4. 폼 종료 및 기타

1. 종료 버튼을 클릭시 폼이 메모리에서 삭제되도록하라

(폼이 메모리에서 삭제 = 폼 종료)

폼 종료는 폼이름.show 만큼이나 단순하고 간단하다. 아래의 식을 입력하면 된다.

Unload Me

주의할 점은 unload와 me사이에 << . >>을 넣지 않는다는 것이다.

2_1. 폼 종료 버튼 클릭시 현재 시트의 셀에 글자가 나오게 하기

가끔 폼 종료와 함께 엮여서 나오는 문제다. 폼 종료 버튼을 클릭시 셀이 글자가 나오게 하는 식을 작성해야하는데, 이는 unload me 식 아래에 쭉 기술하면 된다. 형식은 아래와 같다.

range(“셀”) = “출력할 글자”

range(“셀”).font.속성

예를 들어 A1셀에 “수고하셨습니다”를 출력하고, 글자체를 기울임꼴(이텔릭체), 굵게, 25포인트로 나타내는 식은 아래와 같다.

엑셀 프로시저 폰트 입력 예시 엑셀 프로시저 폰트 출력 예시

프로시저에서 폰트를 컨트롤 할 수 있는 폰트 관련 속성은 아래와 같다.

폰트 관련 속성 글자체 변경 FONT. NAME = “궁서체” 글자 크기 변경 FONT.SIZE = “14” 굴게 FONT.BOLD = TRUE 기울임꼴 FONT.ITALIC = TRUE

2_2 다른 시트의 셀에 글자 나오게 하기

가끔 문제를 푸는 시트가 아닌 다른 시트에 글자를 출력하게 하는 경우도 있다. 여기서 관건은 다른 시트의 주소를 어떻게 참조시키느냐이다. 아래와 같이 하면 된다.

range(” ‘시트이름’ ! 셀주소”) = “입력할 텍스트”

엑셀 프로시저 다른 시트에 폰트 입력 예시

rage안에 큰 따옴표를 적고, 작은 따옴표를 적은 후 시트 이름을 입력한다. 그리고 작은 따옴표를 닫고, !를 적은 후 셀 이름을 입력한다. 그 다음 큰 따옴표를 닫는다. 그렇다면 <<기타작업-1>> 시트의 <>에 수고하셨습니다 글자가 입력된다.

3. 입력을 마쳤을 시 모든 컨트롤을 초기화

모든 컨트롤에 “”을 할당한다.

txt입력 = “” txt입력2 = “”

엑셀 VBA – Sub 프로시저

엑셀 VBA에서 매크로를 작성할 때 Sub 프로시저를 생성하여 코딩합니다. 이 Sub 프로시저는 VBA 프로시저 중 하나이며 그 외에 이벤트 프로시저, Function 프로시저, Property 프로시저가 있습니다.

Function 프로시저는 프로그래밍에서 함수를 사용하는데 이런 역할이라고 생각하시면 될 것 같습니다. 함수는 값을 입력받아 계산 등의 처리를 하여 그 결괏값을 반환하게 되는데 Function 프로시저도 함수와 같이 결괏값을 반환하며 보통 엑셀에 없는 함수를 프로시저로 작성하여 사용합니다.

1. Sub 프로시저

엑셀 매크로로 작성되는 프로시저는 기본적으로 Sub 프로시저를 사용하여 만들어집니다. VBA에서 가장 일반적으로 사용되는 프로시저입니다. 사용 방법은 다음과 같은 구조로 사용합니다.

Sub 프로시저명(매개 변수)

실행문 1

실행문 2

:

:

실행문 n

End Sub

프로시저명은 작성할 때 주의할 점이 있습니다.

① 모든 문자를 사용하여 작성할 수 있으나 첫 글자는 영문이나 한글로 시작해야 합니다.

② 이름 사이에 공백이 있으면 안 됩니다. (띄어쓰기가 불가합니다.)

③ VBA에서 사용하는 명령어와 동일한 이름은 사용할 수 없습니다.

만약, 실행문 중간에 Sub 프로시저를 빠져나가고 싶을 때는 Exit Sub이라 실행문에 작성합니다. Sub 프로시저가 실행문을 실행하다가 Exit Sub문을 만나면 Sub 프로시저를 빠져나가 종료하게 됩니다. 그러면 그 이후의 실행문은 실행되지 않고 빠져나오게 됩니다. Sub 프로시저를 작성하게 되면 마지막에는 반드시 End Sub을 작성하여야 하며 이는 VBA 프로그램에서 자동으로 생성해줍니다. End Sub는 Sub 프로시저가 종료되었다는 것을 표시하여 알려주는 기능을 합니다.

2. Sub 프로시저 작성

엑셀 파일 메뉴에서 개발 도구-코드-Visual Basic을 클릭하여 VBE 창을 엽니다. VBE 메뉴에서 삽입-모듈을 클릭하여 Module을 작성합니다.

다시 VBE 메뉴에서 삽입-프로시저를 클릭한 후 [그림 1]과 같이 이름을 ‘인사_Hello’라 작성합니다.

[그림 1] 프로시저 추가

이름 작성을 하고 확인 버튼을 클릭합니다.

[그림 2] 모듈 창-Sub 프로시저

[그림 2]와 같이 인사_Hello라는 이름으로 Sub 프로시저가 자동으로 작성됩니다.

그럼 [그림 2]와 같이 작성된 모듈 창에 Sub 프로시저를 아래와 같이 코딩합니다.

Public Sub 인사_Hello()

MsgBox “Welcome to Hello World”

End Sub

프로시저를 실행하면 [그림 2]과 같이 메시지 창이 뜨면서 내용에 Welcome to Hello World라고 쓰인 것을 보실 수 있습니다.

[그림 3] Sub 프로시저 실행 결과

3. 주석 작성

프로그래밍을 하다 보면 코딩 내용 중에 설명이나 표시를 해두고 싶은 경우가 있습니다. 이것은 현재 작성한 부분을 코딩하게 된 이유나 동작 설명 등을 해놓아 나중에 이 코딩을 보게 되었을 때 코딩 취지 등을 빠르게 파악하기 위함입니다. 이럴 때 사용하는 것이 주석입니다.

주석은 코딩 창에서 작은 따옴표(‘)를 사용하여 작성합니다.

위에서 작성한 인사_Hello 위에 아래와 같이 코딩합니다.

‘Sub 프로시저 작성 시작

Public Sub 인사_Hello()

MsgBox “Welcome to Hello World”

End Sub

‘Sub 프로시저 작성 시작은 코딩창에서 작성 완료하면 초록색으로 표시되는 것을 보실 수 있습니다. 이것은 주석 문을 나타내는 것으로 VBA 실행할 때 주석문은 실행에 전혀 관여하지 않습니다. 단지 프로그래머가 코딩 내용을 파악하기 쉽게 주석문을 작성하면 됩니다.

728×90

[컴활1급] 엑셀에 잘 나오는 프로시저 정리

728×90

반응형

엑셀에 잘 나오는 프로시저 정리

목록값 입력

– 개체명.additem ” ” (= 없음! 바로 ” ” 작성)

– 개체명.rowsource = ” 범위 ”

입력행위치 구하고, 폼값을 시트에 입력

입력행 = range(“셀”).currentregion.rows.count + a(입력될 셀 행 번호-입력된 셀 수)

cells(입력행,열번호) = 폼값이름

시트에 입력될 폼 값이 콤보상자,목록상자 속 값이라면,

참조행= listOO.listindex 선언 후,

cells(입력행,열번호) = listOO.list(참조행,번호) <-번호는 0부터 시작 초기값으로 첫번째 항목 선택 ~.listindex = 0 초기값으로 아무것도 선택 안함 ~.listindxt = -1 열개수 ~.cloumncount = 2(지정할열개수) 커서위치 ~.setfocus 형식설정 format(값,"형식") 선택 select case 개체명 case "가나다" <-문자일때 ( 여러개를 한번에 작성할 수 없음. 한 case당 하나씩 작성 ) case is >=0 <-숫자일때 case else <-다 아닐때 end select 셀 range(" ") 커서가있는곳 target 시트전체 cells 셀에 문구 출력 range("a1") = "가나다라마바사" 셀에 서식지정 range("a1").font.name = "돋움" range("a1").font.size = "18" range("a1").font.blod = true <- 굵게 range("a1").font..italic = true <- 기울임체 종료 unload me 728x90 반응형

[엑셀] 프로시저

폼 열기

폼이름.show

폼 닫기

unload me

**폼 닫기 = 메모리에서 삭제하기

range(“셀주소”). –> 지정된 셀 변경

target. –> 커서가 있는 곳 변경

cells. –> 시트 전체 변경

입력행의 위치 구하는식

입력행 = range(“표의 첫셀”.currentregion.rows.count + @)

//표의 첫 셀을 기준으로 현재 연결된 자료들의 행 수 + @

표의 첫 셀은 필드명부분부터 시작함

@ == 입력을 시작할 셀의 행 인덱스 – 현재 데이터가 입력되어있는 행의 수

필드명이 있는 행 바로 위에 <표>같은 데이터 셀이 이어져 있으면 데이터가 있는 셀을 두 행으로 인식하기 때문에 아래의 문제에서는 -2를 해주어야함 (<표1>과 필드명부분)

아래 상황은 필드명과 [표1] 표시가 이어져있는 것이 아니므로 필드명만 제외해줌 (-1)

listIndex : 목록에서 선택한 항목의 위치를 기억

list(행번호, 열번호) : 목록에서 지정한 행번호, 열번호에 해당하는 값을 추출

입력상자 초기화 설정

개체명 = “”

목록상자는 첫 번째 항목이 선택되어 있도록 설정

개체명.listindex = 0

//개체명.listindex = -1 은 아무것도 선택하지 않는 것

콤보(목록)상자에 목록값을 입력하는 법

1) 일일이 입력하는 경우

개체명.additem “국어”

개체명.additem “영어”

개체명.additem “수학”

2) 시트에 데이터가 표기되어 있는 경우

개체명.rowsource = “A1:A5”

spin단추 사용

넘겨줄 변수명 = Spin단추이름

다른 시트에 있는 데이터로 행 원본 지정하기

개체명.rowsource = “시트명!셀주소”

**만약 시트에 -문자가 들어간다면 시트명 좌우에 작은따옴표로 묶어주어야 함

combo이름.rowsource = “‘기타작업-1’!Q4:Q19”

Msgbox 아이콘 출력 유형

vbInformation vbCritical vbExclamation vbQuestion

select문

select case 개체

case 숫자 or “문자”

end select

등록자료수 출력하기

현재 데이터가 입력되어있는 자료 수

: CurrentRegion.Rows.Count – 1

-1은 필드명이 있는 행부분이기 때문에 제외해 줌!

별의 블로그 :: [컴퓨터활용능력 1급 실기] 프로시저 작성 (액셀

728×90

728×170

프로시저 작성 (액셀/스프레드시트)

개념

프로시저(Procedure) : 한 개 이상의 기능을 수행하기 위한 명령문의 집합

: 한 개 이상의 기능을 수행하기 위한 명령문의 집합 액셀에서의 프로시저 VBA를 이용하여 액셀 작업을 자동화시킬 수 있는 도구로서 유용하게 활용됨.

프로시저의 종류 Sub 프로시저 : 정해진 명령대로 작업을 수행하고, 결과를 반환하지 않는 프로시저 Function 프로시저 : 결과를 반환하는 프로시저 Property 프로시저 : 개체의 속성을 정의할 때 사용하는 프로시저

모드 실행 모드 : 삽입된 컨트롤을 실행할 수 있는 모드 디자인 모드 : 컨트롤에 기능을 부여하기 위해 코드를 연결하거나 컨트롤의 모양을 변경할 수 있는 모드

코드의 실행 [F5] 를 누르거나 ‘표준’ 도구 모음 의 실행 아이콘(▶) 을 누르면 현재 입력한 코드의 실행 결과를 확인할 수 있음.

매크로 사용 예 1 매크로 사용 예 2

참고

컴퓨터활용능력 1급 시험에서는 각 5점 씩 총 3문제 가 출제됨. 매회 출제되는 3문제 모두가 기출문제와 다르게 출제된 적은 한 번도 없음. 최소한 5점 이상은 맞힌다는 생각으로 공부해야 함.

씩 총 가 출제됨. VBE에서는 개체명 을 입력하고 마침표(.) 를 누르면 해당 개체에서 사용할 수 있는 메서드 및 속성 이 표시되고, 첫 글자 만 누르면 해당 메서드나 속성으로 이동함. 해당 메서드나 속성이 선택되었을 때 [Ctrl] + [Enter] 를 누르면, 선택된 메서드나 개체가 프로시저에 입력되고 같은 줄에서 계속 자료를 입력할 수 있음.

을 입력하고 를 누르면 해당 개체에서 사용할 수 있는 및 이 표시되고, 만 누르면 해당 메서드나 속성으로 이동함. 컨트롤의 이름은 사용자가 임의로 만드는 것이지만, 실제 문제에 주어진 폼에는 이미 각 컨트롤에 이름이 정의되어 있음.

‘txt판매일자.Value = Date’ ‘txt판매일자 = Date’와 같이 ‘.Value’를 생략해도 됨. 하지만 반드시 Value를 붙여야 하는 경우가 있음. ‘txt판매일자’의 값을 날짜 데이터 로, ‘txt수량’과 ‘txt단가’의 값을 숫자 로 워크시트에 입력하려면 반드시 ‘txt판매일자.Value’, ‘txt수량.Value’, ‘txt단가.Value’와 같이 ‘Value’ 속성을 붙여야 함. ‘Value’ 속성을 생략 하면 데이터가 텍스트 로 입력됨.

Range는 워크시트의 셀이나 셀 범위를 선택 하는 속성으로, 셀 주소에 대괄호([]) 를 붙일 경우 생략이 가능함. 예) 다음은 같은 표현임. range(“b3”) .CurrentRegion.Rows.Count [b3] .CurrentRegion.Rows.Count

하는 속성으로, 셀 주소에 를 붙일 경우 생략이 가능함.

VB 사용 예

워크시트의 단추를 클릭하면 폼이 열리도록 설정하기

코드 예 워크시트의 ‘판매입력’ 단추를 클릭하면 폼이 열리도록 설정하기

Private Sub 판매입력_Click() 판매자료입력.Show End Sub

폼이 실행되면 자동으로 기능 실행하기

코드 예 폼 실행 시, 자동으로 TextBox, ListBox, ComboBox 에 항목 넣기(초기화 하기)

Private Sub UserForm_Initialize() txt판매일자.Value = Date ‘판매일자 폼에 현재 날짜 표시하기 lst제품목록.RowSource = “I4:I13” ‘제품목록 리스트에 항목 넣기 (워크시트 참고) cmb결재형태.AddItem “현금” ‘결재형태 콤보박스에 항목 넣기 cmb결재형태.AddItem “카드” ‘결재형태 콤보박스에 항목 넣기 cmb결재형태.AddItem “어음” ‘결재형태 콤보박스에 항목 넣기 ‘cmb결재형태.List = Array(“현금”, “카드”, “어음”)을 입력해도 동일한 결과가 출력됨. ‘만약 콤보 상자가 결재코드와 결재형태를 나타내는 2개의 열로 구성된다면, ‘다음과 ColumnCount 속성을 2로 지정해야 두 열이 표시됨. ‘cmb결재형태.ColumnCount = 2 End Sub

폼의 자료를 워크시트에 입력하기

코드 예

Private Sub cmd등록_Click() If txt제품명.Value = “” Then MsgBox “제품명을 입력하시오.” ElseIf txt수량.Value = “” Then MsgBox “수량을 입력하시오.” ElseIf txt단가.Value = “” Then MsgBox “단가를 입력하시오.” ElseIf cmb결재형태.Value = “” Then MsgBox “결재형태를 입력하시오.” Else 기준행위치 = [b3].Row ‘Row : 셀의 행 기준범위행수 = [b3].CurrentRegion.Rows.Count ‘CurrentRegion : 지정된 셀과 연결된 범위, Rows : 범위에 있는 데이터의 행들, Count : 개수 입력행 = 기준행위치 + 기준범위행수 Cells(입력행, 2) = txt판매일자.Value Cells(입력행, 3) = txt제품명.Value Cells(입력행, 4) = txt수량.Value Cells(입력행, 5) = txt단가.Value Cells(입력행, 6) = Format(txt수량.Value * txt단가.Value, “currency”) ‘Format() : 숫자에 서식을 지정하는 함수, “currency” 통화기호를 붙임. Cells(입력행, 7) = cmb결재형태.Value txt제품명.Value = “” ‘새로운 데이터를 입력받기 전에 컨트롤들에 현재 입력된 값을 지움. txt수량.Value = “” txt단가.Value = “” cmb결재형태.Value = “” End If End Sub

워크시트의 자료를 폼에 표시하기

코드 예 시트의 표에 입력된 제일 마지막 의 ‘판매날짜’, ‘제품명’, ‘수량’, ‘단가’, ‘결재구분’을 폼에 표시하기

Private Sub cmd조회_Click() 기준행위치 = [b3].Row 기준범위행수 = [b3].CurrentRegion.Rows.Count – 1 ‘-1은 기준행(3행)을 제외하고, 순수하게 데이터 범위에 대한 행 수를 구하기 위해 사용됨. 입력행 = 기준행위치 + 기준범위행수 txt판매일자.Value = Cells(입력행, 2) txt제품명.Value = Cells(입력행, 3) txt수량.Value = Cells(입력행, 4) txt단가.Value = Cells(입력행, 5) cmb결재형태.Value = Cells(입력행, 7) End Sub

폼 종료하기

코드 예

Private Sub cmd종료_Click() Unload Me ‘현재 작업중인 폼을 화면과 메모리에서 제거함. ‘Me : 현재 작업중인 폼 (다른 폼을 지정하려면 폼의 이름을 정확하게 기록해야 함.) ‘”Unload 판매자료입력” 이라고 입력해도 같은 결과가 나옴. End Sub

셀의 위치나 데이터가 변경(Change)되면 해당 셀의 특징을 변경시키기 (이벤트)

코드 예

Private Sub Worksheet_Change(ByVal Target As Range) Target.Activate ‘해당 셀로 셀 포인터를 이동시키기 Target.Font.Name = “바탕체” ‘폰트를 “바탕체”로 변경 Target.Font.Size = “14” ‘폰트 크기를 14로 변경 End Sub

워크시트의 Activate 이벤트에 기능 설정하기

코드 예

Private Sub Worksheet_Activate() [b1] = “컴활합격” End Sub

체크박스 기능 구현하기

코드 예 ‘성별’ 의 체크박스( chk성별 )를 체크 하면 ‘ 남학생 ‘, 체크를 해제 하면 ‘ 여학생 ‘이 ‘ 성별(cmd성별) ‘에 표시되도록 하기

Private Sub chk성별_Click() If chk성별.Value = True Then ‘체크박스가 체크될 경우 cmd성별.Caption = “남학생” Else ‘체크박스가 체크되지 않을 경우 cmd성별.Caption = “여학생” End If End Sub

스핀 단추 기능 구현하기

코드 예 ‘국어(spin국어)’ 의 스핀 단추를 누르면 5씩 증감 된 숫자가 ‘ 국어(txt국어) ‘에 표시되도록 하기

Private Sub spin국어_Change() txt국어.Value = spin국어.Value * 5 ‘”spin국어” 컨트롤의 값에 5를 곱해 ‘txt국어’ 컨트롤에 표시 End Sub

콤보 박스에 항목 넣기

코드 예 ( 방법1 )

‘결재형태(cmd결재형태)’ 에 “현금”, “카드”, “어음” 항목 넣기 AddItem 이용

Private Sub UserForm_Initialize() cmb결재형태.AddItem “현금” cmb결재형태.AddItem “카드” cmb결재형태.AddItem “어음” End Sub

코드 예 ( 방법2 )

‘결재형태(cmd결재형태)’ 에 “현금”, “카드”, “어음” 항목 넣기 List, Array 이용

Private Sub UserForm_Initialize() cmb결재형태.List = Array(“현금”, “카드”, “어음”) End Sub

코드 예 ( 방법3 )

‘결재형태(cmd결재형태)’ 에 “현금”, “카드”, “어음” 항목 넣기 With, AddItem 이용

Private Sub UserForm_Initialize() With cmb결재형태 .AddItem “현금” .AddItem “카드” .AddItem “어음” End With End Sub

리스트에 항목 넣기

코드 예

‘제품목록(lst제품목록)’ 에 워크시트 의 항목( I4:I13 ) 넣기

Private Sub UserForm_Initialize() lst제품목록.RowSource = “I4:I13” End Sub

컨트롤로 포커스 설정하기

코드 예

폼이 실행되면 ‘판매일자(txt판매일자)’ 컨트롤로 포커스가 옮겨가도록 하기

Private Sub UserForm_Initialize() txt판매일자.SetFocus End Sub

메시지 상자 출력하기

코드 예

‘작업종료(Cmd종료)’ 버튼을 누르면 현재 날짜와 시간 을 표시하는 메시지 박스를 표시하고, 폼을 종료시키기 MsgBox (메시지 내용) (박스 유형) (메시지 박스 제목)

Private Sub Cmd종료_Click() MsgBox Now, vbOKOnly, “작업을 종료합니다.” ‘vbOKOnly : <확인> 단추만 표시 Unload Me End Sub

기출 문제 예시

Q. <성적입력폼>에 데이터를 입력하고 ‘등록(cmd등록)’ 단추를 클릭하면 폼에 입력된 ‘이름(txt이름)’, ‘성별(cmd성별)’, ‘국어(txt국어)’, ‘수학(txt수학)’과 ‘평균’, ‘평가’ 가 계산되어 ‘기출01’ 시트의 표에 입력되도록 프로시저를 작성하시오.

‘이름’ 앞에 입력되는 순서를 나타내는 번호를 입력하시오.

‘평균’은 입력받은 ‘국어’, ‘영어’, ‘수학’ 값의 평균이고, 소수 2자리까지 표시하시오.

‘평가’는 ‘평균’과 [평가표]를 참조하되, Select ~ Case 명령문을 이용하여 산출하시오.

폼의 ‘등록(cmd등록)’ 단추를 클릭하면 폼의 ‘이름(txt이름)’, ‘국어(txt국어)’, ‘영어(txt영어)’, ‘수학(txt수학)’에는 새로운 값이 입력될 수 있도록 설정하시오.

※ 데이터를 추가하거나 삭제하여도 항상 마지막 데이터 다음에 입력되어야 함.

코드

Private Sub cmd등록_Click() 기준행위치 = [b3].Row 기준범위행수 = [b3].CurrentRegion.Rows.Count 입력행 = 기준행위치 + 기준범위행수 Cells(입력행, 2) = 입력행 – 3 & txt이름.Value Cells(입력행, 3) = txt국어.Value Cells(입력행, 4) = txt영어.Value Cells(입력행, 5) = txt수학.Value Cells(입력행, 6) = Format((Val(txt국어) + Val(txt영어) + Val(txt수학)) / 3, “0.00”) ‘소수 2자리까지 표시 ‘Val() : 숫자 형식의 문자를 숫자로 변환하는 함수 Select Case Cells(입력행, 6) Case Is < 60 Cells(입력행, 7) = "가" Case Is < 70 Cells(입력행, 7) = "양" Case Is < 80 Cells(입력행, 7) = "미" Case Is < 90 Cells(입력행, 7) = "우" Case Else Cells(입력행, 7) = "수" End Select Cells(입력행, 8) = cmd성별.Caption txt이름.Value = "" txt국어.Value = "" txt영어.Value = "" txt수학.Value = "" End Sub Q. <고객관리> 폼의 ‘고객명(txt고객명)’에 조회할 ‘고객명’을 입력하고 ‘고객조회(cmd고객조회)’ 단추를 클릭하면 워크시트의 [표1]에서 해당 데이터를 찾아 각각의 컨트롤에 표시하고 해당 고객의 정보가 없는 경우에는 “조건에 일치하는 자료가 없습니다.”라는 메시지 박스가 표시되도록 프로시저를 작성하시오.

For Each ~ Next문을 이용하시오.

코드

Private Sub cmd고객조회_Click() 스위치 = 0 참조행 = 3 For Each aa In Range(“D4:D7”) 참조행 = 참조행 + 1 If aa.Value = txt고객명.Value Then txt고객등급.Value = Cells(참조행, 5) txt매출금액.Value = Cells(참조행, 6) txt결제방식.Value = Cells(참조행, 7) 스위치 = 1 Exit For End If Next If 스위치 = 0 Then MsgBox “조건에 일치하는 자료가 없습니다.” End If End Sub

Q. ‘보험종류(Cmb종류)’와 ‘가입지점(Cmb지점)’을 선택한 후 ‘성명(Txt성명)’ 을 입력하고 ‘신청확인(Cmb확인)’ 단추를 클릭하면 폼에 입력된 데이터가 [표1]에 입력되어 있는 마지막 행 다음에 연속하여 추가입력 되도록 작성하시오.

폼에서 선택된 보험종류에 해당하는 ‘월납부액’, ‘납부총액’, ‘이자총액’을 [참조표]에서 찾아 [표1]에 표시하시오. (LastIndex 속성 이용)

※ 데이터를 추가하거나 삭제하여도 항상 마지막 데이터 다음에 입력되어야 함.

코드

Private Sub Cmd확인_Click() 기준행위치 = [A1].Row ‘[a1] 셀에 있는 행이 데이터 표의 맨 첫 째 줄로 인식됨. 엑셀에서는 내용에 관계없이 빈 행이 나올 때까지를 하나의 연결된 표로 봄. 기준범위행수 = [A1].CurrentRegion.Rows.Count 입력행 = 기준행위치 + 기준범위행수 참조행 = Cmb종류.ListIndex + 7 ‘ListIndex : 콤보 상자 컨트롤의 목록 부분에서 선택한 항목의 인덱스 번호를 반환하거나 설정하는 속성 ‘0부터 시작하므로, 콤보 상자에서 첫 번째 값을 선택하면 0, 두 번째 값을 선택하면 1이 반환됨. Cells(입력행, 1) = Cmb종류.Value Cells(입력행, 2) = Cmb지점.Value Cells(입력행, 3) = Txt성명.Value Cells(입력행, 4) = Cells(참조행, 9) ‘참조행의 9열 값 표시 Cells(입력행, 5) = Cells(참조행, 10) ‘참조행의 10열 값 표시 Cells(입력행, 6) = Cells(참조행, 11) ‘참조행의 11열 값 표시 End Sub

Q. <온라인수강신청> 폼의 ‘입력(Cmd입력)’ 단추를 클릭하면 폼에 입력된 데이터를 시트의 안에 추가하되, List, Listindex를 사용하여 프로시저를 작성하시오.

목록 상자(lst과목)에서 과목을 선택했을 때에만 폼의 데이터를 워크시트에 입력되도록 설정하시오.

목록 상자(lst과목)에서 과목을 선택하지 않았으면 ‘ID(txtID)’ 컨트롤에 ‘선택안함’을 표시한 후, 목록 상자(lst과목)의 첫 번째 항목을 선택하시오.

‘ID(txtID)’ 컨트롤에 소문자를 입력해도 워크시트에는 대문자로 입력되도록 설정하시오. (Ucase 이용)

‘할인수강료’는 ‘수강료-(수강료*0.1)’로 계산하여 입력하시오.

폼의 ‘입력’ 단추를 클릭하면 새로운 값이 입력될 수 있도록 폼의 ‘ID(txtID)’, ‘날짜(txt날짜)’, ‘이름(txt이름)’에 입력된 데이터는 삭제하고, 목록 상자(lst과목)는 아무것도 선택되지 않은 상태로 설정하시오.

코드

Private Sub cmd입력_Click() If IsNull(lst과목.Value) Then lst과목.ListIndex = 0 txtID = “선택안함” Else 기준행 = [a3].Row 행수 = [a3].CurrentRegion.Rows.Count 입력행 = 기준행 + 행수 참조행 = lst과목.ListIndex Cells(입력행, 1) = UCase(txtID.Value) ‘ID (대문자로 변환) Cells(입력행, 2) = txt이름.Value ‘이름 Cells(입력행, 3) = lst과목.List(참조행, 0) ‘과목코드 Cells(입력행, 4) = lst과목.List(참조행, 1) ‘과목명 Cells(입력행, 5) = lst과목.List(참조행, 2) ‘담당강사 Cells(입력행, 6) = lst과목.List(참조행, 3) – (lst과목.List(참조행, 3) * 0.1) ‘할인수강료 txtID.Value = “” txt이름.Value = “” txt날짜.Value = “” lst과목.Value = “” End If End Sub

728×90

그리드형

키워드에 대한 정보 엑셀 프로 시저

다음은 Bing에서 엑셀 프로 시저 주제에 대한 검색 결과입니다. 필요한 경우 더 읽을 수 있습니다.

이 기사는 인터넷의 다양한 출처에서 편집되었습니다. 이 기사가 유용했기를 바랍니다. 이 기사가 유용하다고 생각되면 공유하십시오. 매우 감사합니다!

사람들이 주제에 대해 자주 검색하는 키워드 컴활1급실기 20일만에 합격하기(3일차)_프로시저 완벽하게 마스터하기

  • 동영상
  • 공유
  • 카메라폰
  • 동영상폰
  • 무료
  • 올리기

컴활1급실기 #20일만에 #합격하기(3일차)_프로시저 #완벽하게 #마스터하기


YouTube에서 엑셀 프로 시저 주제의 다른 동영상 보기

주제에 대한 기사를 시청해 주셔서 감사합니다 컴활1급실기 20일만에 합격하기(3일차)_프로시저 완벽하게 마스터하기 | 엑셀 프로 시저, 이 기사가 유용하다고 생각되면 공유하십시오, 매우 감사합니다.

See also  물려 주다 | 공훈 목사 신금호교회 금요기도회 \"후임자에게 물려주다\" 2018.06.22 28761 좋은 평가 이 답변

Leave a Comment