【发布时间】:2020-11-24 02:39:53
【问题描述】:
我的源工作表中有 4 列(A、B、C、D、E)。我只想将前 2 列(A,B)的行复制到目标。这两列是根据“是”列 (D,E) 中的值复制的。此外,我想将源表中的列(D,E)标题复制到列(C,D)中的目标表 对于 Instanc,这里是源工作表内容
A | B | C | D | E |
testX| 123| xyz | No | Yes |
testY| 125| xyz | Yes| No |
我希望看到复制到目标表的内容如下
A | B | C |
testX| 123| E |
testY| 125| D |
E 和 D 是来自目标工作表的标题。另外,如果您注意到,我对源表中的 C 列不感兴趣,我不需要将其复制到目标表中
我的代码确实正确读取了“是”标准,但它复制了整行并且它没有做任何事情来复制标题。所以我得到的是源表的确切副本。即,
A | B | C | D | E |
testX| 123| xyz | No | Yes |
testY| 125| xyz | Yes| No |
我需要一些帮助来完成这个项目。 谢谢
Sub CopyYes()
Dim c As Range
Dim j As Integer
Dim Source As Worksheet
Dim Target As Worksheet
' Change worksheet designations as needed
Set Source = ActiveWorkbook.Worksheets("Sheet1")
Set Target = ActiveWorkbook.Worksheets("Sheet2")
j = 4 ' Start copying to row 4 in target sheet
For Each c In Source.Range("D5:E1000")
If c = "Yes" Then
Source.Rows(c.Row).Copy Target.Rows(j)
j = j + 1
End If
Next c
End Sub
【问题讨论】: