将特定行复制到另一行 sheet 只是如果行包含一个值
copy specific rows to another sheet just if row contains a value
我想根据列 A 的值复制特定的列。
准确的说,我想把sheetA
的A、C、D列复制到sheetB
的B、C、D列。但只是 sheet A
的 A 列包含 AAAAA
.
的一方
这个例子只是为了简化,实际上我有数百行,所以我需要一个必要的循环,在 sheet B
我想粘贴在 header 下:
我的 Excel sheet 看起来如何:
[][1
Sub COOPPYY()
Dim N As Long, i As Long, j As Long, s As String
Dim src As Worksheet
Dim trg As Worksheet
Dim LastRow As Long
Dim c As Range
N = Cells(Rows.Count, "B").End(xlUp).Row
' Change worksheet designations as needed
Set src = ThisWorkbook.Worksheets("A")
Set trg = ThisWorkbook.Worksheets("B")
'For i = 1 To N
'j = 1
src.Range("A:A").Copy Destination:=trg.Range("B:B")
src.Range("C:C").Copy Destination:=trg.Range("D:D")
src.Range("D:D").Copy Destination:=trg.Range("C:C")
End Sub
第二个 sheet 我想复制的地方看起来如何:
像这样:
Sub CopyIt()
Dim N As Long, i As Long, j As Long, s As String
Dim src As Worksheet
Dim trg As Worksheet
Set src = ThisWorkbook.Worksheets("A")
Set trg = ThisWorkbook.Worksheets("B")
N = src.Cells(src.Rows.Count, "B").End(xlUp).Row
j = trg.cells(rows.count, "B").End(xlUp).Row + 1
For i = 1 To N
With src.Rows(i)
If .cells(1).Value = "AAAAA" Then
.cells(1).Copy trg.cells(j, "B")
.cells(3).Resize(1,2).copy trg.cells(j, "C")
j = j + 1
End If
End With
Next i
End Sub
我想根据列 A 的值复制特定的列。
准确的说,我想把sheetA
的A、C、D列复制到sheetB
的B、C、D列。但只是 sheet A
的 A 列包含 AAAAA
.
这个例子只是为了简化,实际上我有数百行,所以我需要一个必要的循环,在 sheet B
我想粘贴在 header 下:
我的 Excel sheet 看起来如何:
[
Sub COOPPYY()
Dim N As Long, i As Long, j As Long, s As String
Dim src As Worksheet
Dim trg As Worksheet
Dim LastRow As Long
Dim c As Range
N = Cells(Rows.Count, "B").End(xlUp).Row
' Change worksheet designations as needed
Set src = ThisWorkbook.Worksheets("A")
Set trg = ThisWorkbook.Worksheets("B")
'For i = 1 To N
'j = 1
src.Range("A:A").Copy Destination:=trg.Range("B:B")
src.Range("C:C").Copy Destination:=trg.Range("D:D")
src.Range("D:D").Copy Destination:=trg.Range("C:C")
End Sub
第二个 sheet 我想复制的地方看起来如何:
像这样:
Sub CopyIt()
Dim N As Long, i As Long, j As Long, s As String
Dim src As Worksheet
Dim trg As Worksheet
Set src = ThisWorkbook.Worksheets("A")
Set trg = ThisWorkbook.Worksheets("B")
N = src.Cells(src.Rows.Count, "B").End(xlUp).Row
j = trg.cells(rows.count, "B").End(xlUp).Row + 1
For i = 1 To N
With src.Rows(i)
If .cells(1).Value = "AAAAA" Then
.cells(1).Copy trg.cells(j, "B")
.cells(3).Resize(1,2).copy trg.cells(j, "C")
j = j + 1
End If
End With
Next i
End Sub