1. FAQ
  2. 엑셀(Excel)
  3. AfterEffects
  4. Premiere
  5. Photoshop
  6. ETC

이 게시판은 아별닷컴 회원만 질문을 올릴 수 있습니다. 회원에게 주어지는 특권인셈이지요. 회원이 아닌 분들은 열람만 가능합니다.

sub과function차이

VBA 조회 수 2466 추천 수 0 2012.08.07 00:27:27

VBA를 쓸때 sub만은 사용했는데 요즘 function이라는걸 처음배웠습니다.둘의차이를 설명을 들었는데 너무어려워서 이해를 못했습니다ㅋ sub과function의차이를 이해하기쉽게설명부탁드립니다.ㅋ


댓글 '4'

[레벨:1]최종원

2012.08.07 00:56:48
*.55.53.238

function은 함수로도 사용이가능하다는점?..

profile

[레벨:30]아별

2012.08.07 02:12:31
*.130.73.75

안녕하세요? snail0513님..

닉네임 타이핑 치기가 힘들군요.. ㅎㅎ

 

VBA에서 사용되는 프로시저에는 3가지 있습니다.

Sub 프로시저, Function 프러시저, Property 프로시저

 

Sub Procedure: 어떤 동작 또는 연산 후에 반환 값이 없는 경우에 사용합니다. 일반적으로 이것을 많이 사용합니다.

Function Procedure : 반환값이 있는 경우 사용합니다.

                                  최정원님이 말씀하신 것처럼 사용자 정의 함수로도 사용할 수 있습니다.

                                  사용자 정의 함수로 사용하시려면 Public으로 선언해야합니다.

Property Procedure : 사용자 정의 속성을 만들때 사용합니다. Let, Get, Set 문으로 속성에 접근할 수 있습니다.

                                  클래스를 다룰 정도가 되면 따로 공부해보시기 바랍니다.

 

결론은..

반환값이 있는 경우에 사용하는 것이 Function 프로시저입니다.

 

도움이 되셨기를.. ^^

 

 

 

ps. 간단한 예제를 만들어봤습니다.

다운받기 : abyul.com_20120807_SubAndFunctionProcedure-1.xlsm

 

Option Explicit

 

'### 반환하는 값이 없습니다.

Sub test()
    MsgBox functionTest(3, 8)
End Sub

 

'### a + b 라는 결과 값을 반환합니다.

Function functionTest(a As Integer, b As Integer)
    functionTest = a + b
End Function

 

 

첨부
profile

[레벨:30]아별

2012.08.07 16:36:31
*.104.126.21

헐퀴.. 회원정보 이제서야 봤네..

달호 이자식.. ㅋㅋ

[레벨:2]snail0513

2012.08.08 02:25:02
*.233.111.232

ㅋㅋㅋㅋㅋ 좋은답변감사합니다ㅋㅋ

문서 첨부 제한 : 0Byte/ 2.00MB
파일 제한 크기 : 2.00MB (허용 확장자 : *.*)
List of Articles
번호 제목 글쓴이 날짜 조회 수sort
공지 공지 [공지] 아별닷컴의 엑셀 질문방 폐쇄합니다. 카페 질문방 이용하세요.. imagefile [레벨:30]아별 2015-04-23 51607
462 엑셀수식 합계액 오류 _ 단수차 보정 방법 [3] [레벨:1]Editor 2012-04-03 4359
461 엑셀수식 고수님들 도와주세요 ~ 엑셀에서 글자색에 따른 if함수 수식 가능해요? [1] [레벨:1]관절결림 2012-08-23 4358
460 엑셀일반 혹시 이런것도 가능한가요? (간결한 2가지 질문) - VBA만 실행파일(.exe)로 만들 수 있는지 여부, 외부 파일명 일괄 변경 방법.. [2] [레벨:6]파이스 2011-12-02 4357
459 가르쳐주세요 [2] 초보 2009-07-05 4349
458 VBA 파일&폴더 VBA 수정하여 사용하다가 막혀서 문의드립니다. file [2] [레벨:1]예진 2012-11-23 4347
457 엑셀일반 엑셀 cloud tool 파일 구할수 있을까요? [3] [레벨:1]달리아 2013-03-22 4346
456 UDF사용자정의함수 일괄 숫자 더하기에 대해 질문합니다. [8] [레벨:2]시나브로 2013-05-06 4345
455 셀서식(표시형식) 엑셀 중복표시 imagefile [1] [레벨:2]딸꾹질쟁이 2013-04-16 4344
454 셀서식(표시형식) [분류문의] 데이터 유효성검사를 이용해 분류를 만든 다음에 특정셀 값 입력 [1] [레벨:1]수박한통 2013-01-12 4344
453 풀리지 않는 궁금증에 도움 부탁드립니다. [1] [레벨:0]그린티라떼 2009-08-26 4343
452 VBA 파일&폴더 엑셀파일명으로 검색하여 링크걸기 file [1] [레벨:2]광택입니다 2012-09-29 4342
451 VBA 아별님 안녕하세요 file [레벨:2]북곰 2014-07-09 4341
450 pivot 다중범위통합 ㅠㅠ 할수없이 _ 피벗테이블 다중 통합 범위 [4] [레벨:5]눈물바다 2012-08-08 4329
449 차트 피라미드 그래프 (그림 첨부) file [5] [레벨:3]읍내꽃미남 2011-12-16 4327
448 서식설정문의. [1] [레벨:1]상희 2009-10-16 4325
447 VBA 오늘도 질문!^^있습니다. [레벨:2]정용규 2015-01-19 4305
446 엑셀수식 순차적으로 정리하고 싶은데.. 질문드립니다. file [2] [레벨:3]빛의행운아 2013-01-04 4301
445 엑셀일반 빠른실행도구모음 자동숨김 해제 imagefile [2] [레벨:2]데피 2014-06-16 4294
444 엑셀파일 새창에서 열기 [2] [레벨:1]Mr아프락사스 2011-06-14 4273
443 숨겨진 부분 빼고 보이는데로 복사는 알겠는데, 숨겨진 부분이 다른곳에 보이는데로 붙여넣기는 어떻게 하나요 file [2] [레벨:2]찰스박 2011-03-24 4268