0
我有一個7k行數據的Excel表,我需要根據列(組名)將這些數據分成三個不同的表。如何根據條件將所需的數據行從一張Excel表複製到另一張表中?
因此,我需要根據組名稱(有3個組)分成三個不同的表。
請讓我知道對此...提前
謝謝...
嘉
我有一個7k行數據的Excel表,我需要根據列(組名)將這些數據分成三個不同的表。如何根據條件將所需的數據行從一張Excel表複製到另一張表中?
因此,我需要根據組名稱(有3個組)分成三個不同的表。
請讓我知道對此...提前
謝謝...
嘉
你可以嘗試這樣的事情,把它放在一個宏觀和需求
運行Sub Macro1()
Dim rowCounter As Integer
Dim usedRange As Range
Dim sourceSheet As Worksheet, dest1 As Worksheet, dest2 As Worksheet, dest3 As Worksheet
Dim dest1Row As Integer, dest2Row As Integer, dest3Row As Integer
dest1Row = 1
dest2Row = 1
dest3Row = 1
Set sourceSheet = Sheets("Sheet1")
Set dest1 = Sheets("Sheet2")
Set dest2 = Sheets("Sheet3")
Set dest3 = Sheets("Sheet4")
Set usedRange = sourceSheet.usedRange
For rowCounter = 1 To usedRange.Rows.Count
If (usedRange(rowCounter, 1) = 1) Then
usedRange.Range(Cells(rowCounter, 1), Cells(rowCounter, usedRange.Columns.Count)).Copy dest1.Range("A" & dest1Row)
dest1Row = dest1Row + 1
ElseIf (usedRange(rowCounter, 1) = 2) Then
usedRange.Range(Cells(rowCounter, 1), Cells(rowCounter, usedRange.Columns.Count)).Copy dest2.Range("A" & dest2Row)
dest2Row = dest2Row + 1
ElseIf (usedRange(rowCounter, 1) = 3) Then
usedRange.Range(Cells(rowCounter, 1), Cells(rowCounter, usedRange.Columns.Count)).Copy dest3.Range("A" & dest3Row)
dest3Row = dest3Row + 1
End If
Next rowCounter
End Sub
非常感謝...... 我執行了上面的宏...但是我只能看到複製了源表格的第一行 到其他工作表(sheet2,sheet3).. 可能是什麼問題? – kar 2009-11-20 07:58:27
如果您調試宏,usedRange.Rows.Count的值是什麼? – 2009-11-20 08:27:40