我编写了一个宏代码来从一个工作表(Sheet2)复制数据并粘贴到另一个工作表(Sheet1) . 这很好用 . 但是,我想有一个条件来确定在Sheet1中粘贴数据的位置 . 条件是,如果在Sheet2中的单元格A1中选择(从下拉列表中),在Sheet1中的A列中找到(已复制数据),则使用最新数据更新(覆盖)该国家/地区数据,否则更新(覆盖)它应该将新数据粘贴到Sheet1上的最后一组数据下面 .
这是我到目前为止编写的代码:
Private Sub CommandButton1_Click()
ActiveSheet.Range("A1:F44").Copy
With Sheets("Sheet1").Cells(Rows.Count, "A").End(xlUp).Offset(1, 0)
.PasteSpecial xlPasteFormats
ActiveSheet.Range("A1:F44").Copy
With Sheets("Sheet1").Cells(Rows.Count, "A").End(xlUp).Offset(1, 0)
.PasteSpecial xlPasteValues
Application.CutCopyMode = False
Sheets("Sheet2").Activate
End With
End With
End Sub
任何帮助将非常感谢!非常感谢!
1 回答
您可以在A列上使用
match
功能来检查您是否已经拥有该国家/地区 . 如果匹配返回一个数字,使用它来替换国家数据,否则,它将返回错误 - 捕获它并在工作表的末尾添加数据 . 我写了's what you'但是想要做到这一点 .一般的approch将是:我正在使用匹配来查找行值,并且iferror以确保我没有返回错误 .