Please Enable JavaScript!
Gon[ Enable JavaScript ]

엑셀 VBA 셀 참조하는 여러가지 방법

엑셀(Excel)/VBA
반응형

VBA 에서 셀에 접근하는 방법은 여러가지가 있습니다. 셀을 다루는 가장 기본적이고 자주 사용하는 방법이기 때문에 반드시 기억해 두는 것이 좋습니다. 오늘 소개할 방법은 총 5가지입니다. 셀에서 값을 가져온 후 다른 셀에 값을 입력하는 샘플을 만들어 보겠습니다.

 

 

1. Range 개체를 사용해서 접근하는 방법

 

 

▼ 첫번째는 Range 함수입니다. 매개변수로 행과 열 번호를 합친 주소를 입력하면 셀에 포함된 값을 반환합니다. 만약 Range("A1:B2") 과 같이 영역을 지정하면 Range 영역 개체를 반환합니다.

Sub rangeValue()

    With Worksheets("Sheet1")
        .Range("C3").Value = .Range("B3").Value
        MsgBox .Range("B3").Value
    End With

End Sub

 

 

▼ 함수를 실행한 결과는 다음과 같습니다. B3 의 셀 값을 가져와서 C3 셀에 붙여 넣었습니다.


 

 

 

2. Cells 함수의 인덱스 번호로 셀 참조하는 방법

 

 

▼ 두 번째는 Cells 함수를 이용하는 방법입니다. Cells 함수는 두 개의 매개변수가 가집니다. 첫 번째 매개변수는 행의 숫자입니다. 두 번째는 열의 숫자를 나타냅니다. A 부터 1 입니다.

Sub cellsValue()

    With Worksheets("Sheet1")
        .Cells(3, 3).Value = .Cells(3, 2).Value
        MsgBox .Cells(3, 2).Value
    End With

End Sub

 

Range 개체에 포함된 Cells 함수도 있습니다. Cells 함수는 해당 Range 개체가 지정한 셀에서 상대적인 위치를 가리킵니다. Range 개체를 기준으로 좌/, /아래 로 이동해서 해당 셀의 값을 가져옵니다. Worksheets("Sheet1").Cells(3, 2).Value Range(“A1”).Cells(3, 2).Value 와 같습니다.

 

※ 아래는 참고하면 좋을 만한 글들의 링크를 모아둔 것입니다.
엑셀 VBA 각종 함수 사용법과 샘플 소스 쉽게 얻는 방법
엑셀 VBA 개발할 로그 출력하는 방법
엑셀 VBA IF 지시 구문 사용하는 방법, IF … ELSEIF … ELSE … ENDIF
엑셀 VBA 매크로 소스 주석 Comments 넣는 방법
셀 VBA 이항 논리 연산자 단항 논리 연산자 Not 사용하기



 

 

3. Offset 함수로 상대위치를 계산해서 셀 참조하는 방법

 

 

▼ 세 번째는 Offset 함수입니다. Offset Range 개체의 Cells 과 마찬가지로 해당 개체의 상대적인 위치를 나타냅니다. Range 에서 사용한 Offset Range 위치를 기준으로 매개변수에 입력한 값만큼 좌/, /아래로 이동한 뒤 해당 셀에서 값을 가져옵니다. Range Cells 와 달리 Offset 는 기준인 Range 개체의 위치가 0, 0 입니다. 그러니까 Offset(2, 1) 이면 아래로 2, 오른쪽으로 1칸 이동하라는 뜻입니다.

Sub officeValue()

    With Worksheets("Sheet1").Range("A1")
        .Offset(2, 2).Value = .Offset(2, 1).Value
        MsgBox .Offset(2, 1).Value
    End With

End Sub

 


 

 

 

4. 바로가기 표기법으로 셀 참조하는 방법

 

▼ 네 번째는 바로가기 표기법입니다. 표기법만 다를 뿐 Range 에 셀 주소를 입력하는 방식과 같습니다.

Sub directValue()

    With Worksheets("Sheet1")
        .[C3].Value = .[B3].Value
        MsgBox .[B3].Value
    End With

End Sub

  


 

 

 

5. 행 및 열로 셀 참조하는 방법

 

 

▼ 다섯번 째는 Rows 함수와 Columns 함수로 행과 열 값을 지정하는 방식입니다. Rows 값으로 행의 위치를 지정하고 지정한 행에서 다시 Columns 함수로 열을 지정합니다. Rows(6).Columns(1).Value 6번째 행에서 1번째 A열의 값을 나타내는 것입니다.

Sub columnsValue() 

    With Worksheets("Sheet1")
        .Rows(3).Columns(3).Value = .Rows(3).Columns(2).Value
        MsgBox .Rows(3).Columns(2).Value
    End With

End Sub

  

 

※ 아래는 참고하면 좋을 만한 글들의 링크를 모아둔 것입니다.
엑셀 VBA 각종 함수 사용법과 샘플 소스 쉽게 얻는 방법
엑셀 VBA 개발할 로그 출력하는 방법
엑셀 VBA IF 지시 구문 사용하는 방법, IF … ELSEIF … ELSE … ENDIF
엑셀 VBA 매크로 소스 주석 Comments 넣는 방법
셀 VBA 이항 논리 연산자 단항 논리 연산자 Not 사용하기
반응형
Posted by 녹두장군1
,