VBA – 배열을 셀 범위에 출력하기

Written by

Mel Jenkins

Reviewed by

Steve Rynearson

Translated by

Younjung Kim

Last updated on 4월 29, 2023

이 튜토리얼에서는 VBA에서 배열을 범위로 출력하는 방법을 보여드립니다.

배열을 셀 범위에 출력하기

배열에 저장된 데이터를 Excel 시트로 쉽게 출력할 수 있습니다. 이를 수행하는 방법에는 3가지가 있습니다.

다른 범위에 데이터 출력하기

Excel에서 한 범위의 데이터로 배열을 채운 다음 다른 범위로 데이터를 출력할 수 있습니다.

Public Sub TestOutput()
'배열을 선언합니다
   Dim rnArray() As Variant
'범위의 값들로 배열을 채웁니다
   rnArray = Range("A1:H24")
'배열의 값들을 다른 셀 범위에 출력합니다
   Range("J1:Q24") = rnArray()
End Sub

셀 범위가 배열에 입력되고 배열 값들이 시트의 다른 셀 범위에 출력됩니다.

배열을 반복하여 데이터 출력하기

이 예제는 배열을 반복하여 배열 값들을 범위에 출력합니다.

Public Sub TestLoopArray()
'배열을 선언합니다
   Dim rnArray() As Variant
'배열의 인덱스로 사용할 변수를 선언합니다
   Dim iRw As Integer
'배열 변수에 셀 범위를 할당합니다
   rnArray = Range("A1:A10")
'배열을 반복합니다
   For iRw = LBound(rnArray) To UBound(rnArray)
'다른 범위에 배열 값 데이터를 입력합니다
      Cells(iRw, 2).Value = rnArray(iRw, 1)
   Next iRw
End Sub

LBound UBound는 배열의 시작 인덱스(하한)와 끝 인덱스(상한)를 반환합니다(이 경우 1과 10).

배열 데이터 행/열 바꾸기

배열의 데이터를 Excel 시트로 옮기면서 행/열을 바꿀 수도 있습니다. 행/열 바꾸기를 사용하면 Excel 시트에서 데이터를 가로 방향으로 표시할 수 있습니다.

예를 들어 Excel에 도시 이름 목록이 있고 이 목록의 행/열을 바꾸고 싶다고 가정해 보겠습니다.

vba array transpose 1

다음 코드를 사용하면 행/열을 바꿀수 있습니다:

Public Sub TestOutputTranspose()
'배열을 선언합니다
   Dim rnArray() As Variant
'범위의 값으로 배열을 채웁니다
   rnArray = Range("A1:A38")
'행/열을 바꾸어서 셀 범위에 데이터를 입력합니다
   Range(Cells(1, 3), Cells(1, 40)).Value = Application.Transpose(rnArray)
End Sub

실행 결과는 다음과 같습니다:

vba array transpose 2

Debug.Print를 사용하여 출력하기

배열 값을 디버그 창에 출력할 수도 있습니다.

Public Sub TestLoopArray()
'배열을 선언합니다
   Dim rnArray() As Variant
'배열의 인덱스로 사용할 변수를 선언합니다
   Dim iRw As Integer
'배열 변수에 셀 범위를 할당합니다
   rnArray = Range("A1:A10")
'1에서 10까지 반복합니다
   For iRw = 1 To UBound(rnArray)
'직접 실행 창에 결과를 표시합니다
     Debug.Print rnArray(iRw, 1)
   Next iRw
End Sub

 

vba-free-addin

VBA 코드 예시 추가 기능

본 웹사이트에 있는 모든 코드 예시에 쉽게 접근해보세요.

메뉴로 이동하여 클릭만 하면 코드는 모듈에 바로 입력됩니다. .xlam 추가 기능.

(설치가 필요 없습니다!)

무료 다운로드

VBA 코드 예시로 돌아가기