Excel - 행에서 열로 데이터를 전송하는 매크로

발행물

데이터는 이제 아래 형식으로되어 있습니다.

 1 2 3

9 15 16 20 25

1

이 형식으로 와야합니다.

 1

2

9

15 명

16

20

25 명

1

해결책

가정 :
  • 1. 데이터는 행 1에서 시작하여 항상 A 열에 복사됩니다
  • 2. 데이터에 왜곡없이 행을 삽입 할 수 있습니다.

 Sub TransposeSpecial ()

시트의 긴 '최대 행만큼 희미한 lMaxRows

Dim lThisRow As Long '행 처리 중

Dim iMaxCol As Integer '처리중인 행에서 최대 사용 된 열

lMaxRows = 셀 (Rows.Count, "A"). End (xlUp) .Row

lThisRow = 1 '행부터 시작

lThisRow <lMaxRows 동안 수행

iMaxCol = 셀 (lThisRow, Columns.Count) .End (xlToLeft) .Column

If (iMaxCol> 1) Then

행 (lThisRow + 1 & ":"& lThisRow + iMaxCol - 1). 삽입

범위 (셀 (lThisRow, 2), 셀 (lThisRow, iMaxCol)).

범위 ( "A"& lThisRow + 1). 선택

Selection.PasteSpecial 붙여 넣기 : = xlPasteAll, 작업 : = xlNone, SkipBlanks : = 거짓, Transpose : = True

범위 (셀 (lThisRow, 2), 셀 (lThisRow, iMaxCol)). 지우기

lThisRow = lThisRow + iMaxCol - 1

lMaxRows = 셀 (Rows.Count, "A"). End (xlUp) .Row

끝면

lThisRow = 1ThisRow + 1

고리

End Sub

유의 사항

이 팁에 대한 rizvisa1에게 포럼에 감사드립니다.
이전 기사 다음 기사

톱 팁