Vba에서 범위를 전치하는 방법(예제 포함)


다음 기본 구문을 사용하여 VBA를 사용하여 범위를 바꿀 수 있습니다.

 SubTransposeRange ()

    'specify range to transpose
    MyRange = Range(" A1:B5 ")
    
    'find dimensions of range
    XUpper = UBound(MyRange, 1)
    XLower = LBound(MyRange, 1)
    YUpper = UBound(MyRange, 2)
    YLower = LBound(MyRange, 2)
    
    'transpose range
    Range(" D1 ").Resize(YUpper - YLower + 1, XUpper - XLower + 1).Value = _
      WorksheetFunction.Transpose(MyRange)
      
End Sub

이 특정 예에서는 A1:B5 범위의 셀을 바꾸고 D1 셀에서 시작하는 바뀐 범위를 표시합니다.

다음 예에서는 실제로 이 구문을 사용하는 방법을 보여줍니다.

예: VBA에서 범위를 바꾸는 방법

다양한 농구 선수에 대한 정보가 포함된 다음과 같은 데이터 세트가 Excel에 있다고 가정해 보겠습니다.

A1:B5 범위를 전치하고 D1 셀에서 시작하여 전치된 범위를 표시한다고 가정해 보겠습니다.

이를 위해 다음 매크로를 생성할 수 있습니다:

 SubTransposeRange ()

    'specify range to transpose
    MyRange = Range(" A1:B5 ")
    
    'find dimensions of range
    XUpper = UBound(MyRange, 1)
    XLower = LBound(MyRange, 1)
    YUpper = UBound(MyRange, 2)
    YLower = LBound(MyRange, 2)
    
    'transpose range
    Range(" D1 ").Resize(YUpper - YLower + 1, XUpper - XLower + 1).Value = _
      WorksheetFunction.Transpose(MyRange)
      
End Sub

이 매크로를 실행하면 다음과 같은 출력이 나타납니다.

전치된 범위는 D1 셀부터 표시됩니다.

즉, 행과 열이 반전됩니다.

다른 범위를 바꾸려면 매크로의 A1:B5를 다른 범위로 바꾸면 됩니다.

참고 : VBA Transpose 메서드에 대한 전체 문서는 여기에서 찾을 수 있습니다.

추가 리소스

다음 자습서에서는 VBA에서 다른 일반적인 작업을 수행하는 방법을 설명합니다.

VBA: 특정 텍스트가 포함된 셀 수를 계산하는 방법
VBA:범위 내 행 수를 계산하는 방법
VBA: COUNTIF 및 COUNTIFS 함수 작성 방법

의견을 추가하다

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다