mwultong Blog ... 프로그래밍 / 계산기

컴퓨터 엑셀 워드 포토샵 구글어스 WINDOWS JAVASCRIPT JAVA C++

 
Thursday, March 08, 2007

Excel/엑셀] VBA 2차원 배열 선언 초기화 출력 예제; Two Dimensional Array


엑셀 비베(VBA)에서, 2차원 배열을 만들어서 초기화하는 것은 그리 매끄럽게 되지 않았습니다. 요소들을 일일히 대입해 주어야 했습니다. 옛날 GW-BASIC 에서와 같은 그런 원시적인 방법입니다. 더 간단한 방법이 없나 하고 아무리 찾아봐도 없더군요.

엑셀 비베, 이차원 배열(Array) 만들기 예제 소스

(엑셀에서 Alt+F11키를 눌러, 비베 에디터를 실행하고, 비베 에디터 메뉴의, "삽입 > 모듈"을 선택한 후, 다음 코드를 붙여 넣습니다.)
비베 에디터에서 F5 키를 누르거나, 엑셀에서 Alt+F8 키를 누르면 VBA 매크로가 실행됩니다.

Sub Array_2D_Print_Example()

  ' 2차원 배열 선언; 첫째 숫자는 행의 최대 첨자, 둘째 숫자는 열의 최대 첨자
  Dim a(4, 3)

  a(0, 0) = 662: a(0, 1) = 7: a(0, 2) = 4: a(0, 3) = 74
  a(1, 0) = 8: a(1, 1) = 396: a(1, 2) = 299: a(1, 3) = 95
  a(2, 0) = 66: a(2, 1) = 73: a(2, 2) = 86: a(2, 3) = 0
  a(3, 0) = 116: a(3, 1) = 26: a(3, 2) = 586: a(3, 3) = 42
  a(4, 0) = 84: a(4, 1) = 7: a(4, 2) = 41: a(4, 3) = 11


  Dim I, S

  ' 배열 요소들을 하나씩 꺼내어, 문자열로 저장
  For I = LBound(a, 1) To UBound(a, 1) ' 0~4
    For J = LBound(a, 2) To UBound(a, 2) ' 0~3
      S = S & "(" & I & ", " & J & ")번 요소의 값: " & a(I, J) & Chr(13)
    Next J
  Next I

  ' 배열 내용 출력
  MsgBox S

End Sub


위의 VBA 코드를 실행하면 다음의 내용과 같은 메시지 박스가 나옵니다. 이차원 배열의 모든 요소들을 하나씩 출력한 것입니다.


---------------------------
Microsoft Excel
---------------------------
(0, 0)번 요소의 값: 662
(0, 1)번 요소의 값: 7
(0, 2)번 요소의 값: 4
(0, 3)번 요소의 값: 74
(1, 0)번 요소의 값: 8
(1, 1)번 요소의 값: 396
(1, 2)번 요소의 값: 299
(1, 3)번 요소의 값: 95
(2, 0)번 요소의 값: 66
(2, 1)번 요소의 값: 73
(2, 2)번 요소의 값: 86
(2, 3)번 요소의 값: 0
(3, 0)번 요소의 값: 116
(3, 1)번 요소의 값: 26
(3, 2)번 요소의 값: 586
(3, 3)번 요소의 값: 42
(4, 0)번 요소의 값: 84
(4, 1)번 요소의 값: 7
(4, 2)번 요소의 값: 41
(4, 3)번 요소의 값: 11

---------------------------
확인
---------------------------




1차원 배열 만들기: ▶▶ Excel/엑셀 VBA] 배열 선언, Array 함수로 초기화 출력 예제; Array Function Example




tag: office
엑셀 Excel | 워드 Word | VBA 매크로 | 오피스

0 Comments:

<< Home RSS 2.0 feed

구글 Google 에서 제공하는 무료 블로그 서비스인 블로거 Blogger 의 인터넷 주소는 www.blogger.com 입니다. Blogger 에 블로그를 만들면, blogspot.com 이라는 주소에 블로그가 생성됩니다.
블로그를 직접 방문하지 않고도 최신 게시물을 구독하려면 RSS 2.0 feed 주소를 리더기에 등록하시면 됩니다.
Previous Posts
Monthly Archives
Top