仅复制粘贴部分行,其中一个单元格包含图片,在满足条件时复制粘贴到另一个单元格 sheet

Copy paste only part of rows, with one cell containing a picture, on another sheet when condition is met

我有一个名为数据的工作表,其中我按行列出了产品。每个产品的信息都在 A:W 列中。 A 列用于公司 ID。 根据在下拉列表中选择的 ID,我希望将单元格 P:W 粘贴到名为 Quote 的工作表中,从第 11 行第 A:H 列开始。必须注意工作表数据中的 W 列用于图片。

我在网上找到了一些代码,并尝试将其修改为适合我的情况,但没有成功。首先,我不能复制粘贴图片。我假设我应该使用 Range.Copy 方法而不是 PasteSpecial 方法,但我无法在我的代码中使用它。其次,我找不到仅复制和粘贴列 P:W 中的单元格的正确方法。

Sub Quote()

Dim Data As Worksheet
Dim Quote As Worksheet
Dim CompanyID As String
Dim Finalrow As Integer
Dim i As Integer

Set Data = Sheet3
Set Quote = Sheet2
CompanyID = Sheet6.Range("E5").Value

Data.Select
Finalrow = Cells(Rows.Count, 1).End(xlUp).Row

For i = 2 To Finalrow
    If Cells(i, 1) = CompanyID Then
    Range(Cells(i, 1), Cells(i, 23)).Copy
    Quote.Select
    Rows(11).Select
    Range("A200").End(xlUp).Offset(1, 0).PasteSpecial xlPasteAll
    Data.Select
    End If

Next i

Quote.Select
Range("A11:O200").Delete
Range("A1").Select

End Sub

尝试

Data.Range(Cells(i, 16), Cells(i, 23)).Copy Quote.Range("A200").End(xlUp).Offset(1, 0).resize(1,8)

您可以删除代码中的所有 .Select 行。在 Excel 中,几乎不需要自动化 .Select。 此外,您已经引用了工作表。如果您使用这些参考资料来确定范围,则无需查看表格。