[英]How to copy a reusable multi row/column table from one excel worksheet to a database on another worksheet
[英]How to copy a row onto another excel worksheet if a column in it contains a specified value (of another column in the new sheet)?
我有一个数据集中的随机数字子集,我在新数据表中创建了一个新列。 但是,我需要使用一个简单的命令将与第一个数据表中列中的数字关联的行复制到第二个数据表中。 我从未使用过 VBA 宏(如果这就是所谓的宏),但我一直在寻找能够做到这一点的任何代码?
这是我发现的一个例子,作为对另一个问题的回答,我试图用我对 excel 宏的非常有限的理解来修改它:
Private Sub CommandButton1_Click()
Copy_Cells()
botRow = 100
For i = botRow To 1 Step -1
If Cells(i, 10).Value = B3:B186 Then
Rows(i).EntireRow.Copy
Rows(i + 1).Insert Shift:=xlDown
End If
Next i
End Sub
我得到的错误是关于语法的。 我的问题是我不明白任何代码的含义。 原始数据是这样的:原始数据
这就是我想要输入的内容:想要的输出
我找到了一个代码,它完全符合我的需要。 我是从关于 stackexchange 的另一个问题中得到的,但我想我会发布以防其他人需要它。
Sub CopyYes()
Dim c As Range
Dim j As Integer
Dim Source As Worksheet
Dim Target As Worksheet
Dim Condition As Worksheet
Set Source = ActiveWorkbook.Worksheets("source")
Set Target = ActiveWorkbook.Worksheets("target")
Set Condition = ActiveWorkbook.Worksheets("condition")
j = 1 'This will start copying data to Target sheet at row 1
For Each d In Condition.Range("A1:A86")
For Each c In Source.Range("B2:B1893")
If d = c Then
Source.Rows(c.Row).Copy Target.Rows(j)
j = j + 1
End If
Next c
Next d
End Sub
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.