Skip Navigation Links.
Expand VBAVBA
엑셀프로그래밍이 필요한 이유
Expand ExcelExcel
Expand External LibraryExternal Library
Expand SolutionSolution
Expand EssayEssay

Statements|Statements|Option Explicit|Comment|
|Sub|Function|Procedure|End Sub|End Function|
|Declaraton Statements|Assignment Statements|
|Executable Statements|

명령문(Statement)

엑셀 프로그래밍한다는것은 어떤 문제를 어떻게 풀까??
궁리하고 이것을 컴퓨터와 약속된 문장으로 명령을 하는 작업이다
이때 하나의 행동(Action)을 하도록 지시하는 문장을 명령문이라고 한다
명령문 여기에서 명령문(Statement)라고 부른다
엑셀에게 어떤일을 하라고 VB언어를 통하여 말을 하는것이다
말을 한다고 하는 단어는 Say,Talk,Tell,Speak!!등등이 많은데..
왜 Statement라는 단어를 사용했을까??
말은 말인데 그냥 말이 아니고..
논리적이고 사실과 원칙에 입각한 말!!
그런 말을 State라고 하고 명사는 Statement!!
그러니 말을 조심해서 잘해야 한다
한번 말하고 번복하기 힘든 그런 법조문 같은 말!!
간단명료한 표현(Clear-Cut Expression,Idea)을 사용한다
이말같기도 하고 저말같기도 한 말을 사용하지 않는다
그것이 프로그래밍의 명령문(Statement)이다
정해진 문법대로 하지 않으면 에러가 퍽퍽난다!!
그래서 알고나면 무지하게 간단명료하고 쉬운 말이고
어영부영 말을 하는 습관이 있는 사람은 생각을
간단명료한 표현으로 바꾸는 습관을 갖여야 한다
나중에 각각 자세히 설명하겠지만
어떤 명령문이 있는지 잠깐 보도록 하자

명령문을 크게 3가지로 구분하자면

Declaraton Statements(선언적 명령)
변수를 선언하거나,
특정한 작업에 있어서 설정방법을 규정하는 명령문
예를 들어서
Option Explicit
라는 선언부의 선언은 변수를 반드시 명시적으로 선언하라는 선언적명령

Assignment Statements(할당명령문)
변수나 상수에 값을 전달하는 명령

Executable Statements(작업실행명령문)
모든 실질적인 작업은 이런 명령이다
함수나 프로시져를 호출하여 작업을 시키거나
표현식을 계산하거나 하는 작업들을 지시하는 명령문이다

위와 같이 크게 3가지로 구분할수 있겠고
진행하면서 자세히 익숙해지도록 하자
모듈시트에 입력하는 모든 내용은 컴퓨터에 작업지시(명령문)을
날린다고 생각하시면 된다
단지 한가지 작업지시가 아닌 내용은
복잡한 코딩을 하면서 특정한 명령문의 내용을 설명하여 놓는
Comment구문이 있을뿐이다

코딩을 하면서 메모(Comments,주석문)를 입력할수 있겠고 이때 문장이 시작하기전에
'표시를 앞에 찍어주면 컴퓨터가 이것은 명령문으로 읽지 않게 되는것이다
아래와 같이 사용할수 있는것이다

Sub thisIsTest()
'순환문의 연습 순환을 하면서 만들어내는 문자를 직접실행창에 뿌려준다
'VBE편집기의 모듈시트에 이 프로시져를 복사하여 
'붙여놓고 실행시키보시기 바란다
'debug.print는 직접실행창에 내용이 나타나는것을 볼수 있다
'순환문이 돌면서 변하는 값을 관찰할수 있다
'직접실행창이 보이지 않으면 보기/직접실행창보기메뉴를 크릭한다

Dim intX As Integer
Dim intZ As Integer, strX As String
For intX = 1 To 10
   For intZ = 1 To 10
      strX = strX & "intX= " & intX & "|intY= " & intZ & Chr(13)
   Next
Next
Debug.Print strX
End Sub

단지 규칙을 지키기들을 싫어하는 습성들 때문이고
일상에서는 규칙을 좀 어기고 슬슬 게겨도 별일이 없지만
컴퓨터프로그래밍은 그렇지 않아서 숙달되기를 힘들어 한다

아무튼,엑셀에게 일을 시키려면 명령을 하여야 한다
엑셀에게 일을 시키려면 한줄..한줄의 명령문을 작성해 나가야한다
그냥 우리가 생각한대로 움직여주지 않는다
하나의 행동이 한줄의 명령문으로 이루어져야 한다
한줄에 두개의 명령을 적으면 무슨말인지 못알아먹는 단순한 녀석이다
엑셀에게 일을 시키는 최소단위가 하나의 명령문이다

명령문은 한줄,한줄 순서대로 실행된다

명령문은 한줄 한줄 실행된다
너무 속도가 빨라서 한꺼번에 여러줄을 처리하는것 같지만
죽기 살기로 한줄씩만 실행하고..
어떤 명령줄에 문제가 있으면 일하기를 포기한다

직접실행창에서 한줄의 명령문을 실행해본다

  • |<<
  • <<
  • >>
  • >>|
1 Of 3









명령은 한번에 하나의 행동만..
실행한다..
사람들의 행동과 같이 MultiTasking같은것은 하지 않는다
그림과 같이 직접실행창에 명령문을 위와 똑같이 흉내내어 입력한후
Enter키를 치면 한줄의 명령이 실행되는것을 볼수 있다
이렇게 한줄,한줄 실제로 어떤작업을 하도록 하는 명령문을
위에서 말한 Executable Statement라고 할수 있겠다
직접실행창에서는 한줄씩만 명령을 해볼수 있다


명령문들을 하나로 묶어서 외부에서 호출
(Sub Procedure,Function Procedure)

명령문이 모여서 하나의 묶음이 되어 이것을
섭프로시져(Sub~End Sub으로 묶고),
혹은
펑션프로시져(Function ~End Function으로 묶고)
그리고 각각의 묶음(프로시져,함수)는 이름표를 갖고 있어야 한다
이것을 실행시킬때는 함수나 프로시져의 이름을 호출하여 실행시킨다
또한 이런 여러개의 묶음들은 한장의 모듈시트에 쌓여지고
이런 여러개의 모듈시트들이 모여서 프로젝트가 된다

Sub Procedure와 Function Procedure

  • |<<
  • <<
  • >>
  • >>|
1 Of 5










프로그래밍은 위와 같이 최소단위의 하나의 명령문이
여러줄 모여 외부에서 호출할수 있는 하나의 명령 세트가
Sub,Function Procedure로 만들어 지는것이다

명령문은 한줄..한줄 정확하게 실행된다
우리의 일상에서와 같이 명령을
세수한다
양치질해라
음악듣는다
신문본다
샤워한다
식사한다
라고 하면 ..샤워먼저하고..세수하고..양치질을 할수도 있고
동시에 할수도 있다

그러나 컴퓨터는 하나의 명령문은 작성한 순서대로 실행된다
자기가 알아서 앞뒤 순서를 바꾸는일을 절대 없다
시키는 일을 순서대로 정확하게 진행한다
워낙에 속도가 빠르니까..감각적으로 한꺼번에 동시에 처리한다고
생각하는것이다
그런것을 기대하면 안된다
초보님들은 컴퓨터가 알아서 여러줄의 명령문의 앞뒤를 스스로
알아서 처리한다고 생각하여
그것을 기대하다가 밤을 새는 경우가 많다
컴퓨터가 이해하는 방식으로 생각을 약간 바꿔야 한다
너무 바꾸면 인생살이 너무 고지식하다는 소리를 들을 우려도 있으니
적절히 균형을 잡으면서 프로그래밍을 해야 한다..하하..!!