옵션 베이스 1
공백을 제외한 하위 셀 범위()
내 범위, my1(), c 범위를 어둡게
Dim p As Long
나는 오랫동안 Dim
Set my = Application.InputBox(프롬프트:="마우스를 사용하여 셀 범위를 선택하세요.", 유형:=8)
p = my.Count
나 = 1
ReDim my1(p, 1)
For Each c In my
만약 c.Value "" 그렇다면
my1(i, 1) = c.값
나 = 나 + 1
끝나면
다음c
Set my = Application.InputBox(프롬프트:="마우스를 사용하여 출력할 첫 번째 셀을 선택하세요.", 유형:=8)
Application.ScreenUpdating = False
내가 = 1이면 그럼
나 = my1
그밖에
Range(my, my.Offset(i - 2, 0)) = my1
끝나면
Application.ScreenUpdating = True
MsgBox "완료되었습니다."
끝 서브
이 코드는 원하는 것을 달성할 수 있습니다.
작업 참고
제가 어제 답변한 "도움말: 행을 열로 일괄 변환하는 방법이 있나요?"라는 질문을 ""에서 참고하실 수 있습니다
즉, 상위 3행을 하위 2열로 변환한다는 뜻인지 모르겠네요!
1 셀 A10에 수식을 입력하세요.
=OFFSET($A$1,INT((ROW(A1)-1)/10),MOD(ROW(A1)-1,10))
복사 및 드롭다운
2 셀 B10에 수식을 입력하세요.
=IF(OFFSET($A$1,INT((ROW(B1)-1)/10),MOD(ROW(B1)+9,10)+1)="","",OFFSET($A$1 ,INT((ROW(B1)-1)/10),MOD(ROW(B1)+9,10)+1))
복사 및 드롭다운
3. A10:B39 영역을 선택하고 마우스 오른쪽 버튼을 클릭하여 복사 - 다시 마우스 오른쪽 버튼을 클릭 - 선택하여 붙여넣기 - 값
A10:B39의 데이터 영역이 형성되고 수식이 모두 사라지며 모든 셀이 데이터가 됩니다.
4. B열에 공백이 있는 행을 정렬하고 삭제합니다.
E2=IF(ROW(A1)>COUNTA($A$2:$D$9),"",INDIRECT(TEXT(SMALL(IF($A$2:$D$9"",ROW($A$2:$D $9)*100+COLUMN($A$2:$D$9),99^9),ROW(A1)),"r0c00"),))
F2=IF(ROW(A1)>COUNTA($A$2:$D$9),"",INDEX($A$1:$D$9,MOD(SMALL(IF($A$2:$D$9"", ROW($A$2:$D$9)/100+COLUMN($A$2:$D$9),99^9),ROW(A1)),1)*100,INT(SMALL(IF($A$2: $D$9"",ROW($A$2:$D$9)/100+COLUMN($A$2:$D$9),99^9),ROW(A1))))
배열 수식을 아래쪽으로 복사하세요. [배열 수식, 수식 입력 후 수식 편집 막대에 커서를 놓고 CTRL+SHIFT+Enter를 누르면 배열 수식이 적용됩니다.]
위 내용은 EXCLE의 여러 행과 열의 데이터를 하나의 열로 변환하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!