2014-09-27 2 views

답변

0

, 우리는 워크 시트의 모든 것을 복사하고 있습니다. 이 경우 해당됩니다. 부분 집합 인 경우 필요에 맞게 rngSource를 수정 해보십시오.

Sub FlattenAndCopy() 
Dim wsSource As Excel.Worksheet 
Dim rngSource As Excel.Range 
Dim varSource As Variant 
Dim wsTarget As Excel.Worksheet 
Dim SourceCount As Long 
Dim varTarget() As Variant 
Dim i As Long, j As Long 

Set wsSource = ActiveSheet 
Set rngSource = wsSource.UsedRange 
varSource = rngSource.Value 
SourceCount = rngSource.Cells.Count 
ReDim varTarget(1 To SourceCount) 
For i = LBound(varSource, 1) To UBound(varSource, 1) 
    For j = LBound(varSource, 2) To UBound(varSource, 2) 
     varTarget((i - 1) * (UBound(varSource, 2)) + j) = varSource(i, j) 
    Next j 
Next i 
Set wsTarget = wsSource.Parent.Worksheets.Add 
wsTarget.Cells(1).Resize(SourceCount, 1) = Application.WorksheetFunction.Transpose(varTarget) 
End Sub 
관련 문제