VBA如果是->然后复制并粘贴其他单元格[关闭]

问题描述 投票:-2回答:1

我看到了很多类似的问题。但是即使经过几个小时,我也找不到解决方案。请帮助我。

我在Sheets(Invulsheet)范围R5:Z52上有数据。当R列中的值为'是'时,我要复制但仅从该列中的S列复制到Z我想将该数据粘贴到工作表(数据库)的第一个空行中,列A中之后,我想在R列中搜索下一个“是”,然后执行相同的操作。

我找到了25个不同的代码,并试图对其进行调整,但是我对所有代码都做错了。。

excel vba loops if-statement
1个回答
0
投票
  1. Yes的过滤器
  2. 复制结果范围
  3. 粘贴到所需的表上

Sub copy()

Dim ws As Worksheet: Set ws = ThisWorkbook.Sheets("Invulsheet")
Dim ps As Worksheet: Set ps = ThisWorkbook.Sheets("Database")
Dim LR As Long

LR = ws.Range("R" & ws.Rows.Count).End(xlUp).Row

ws.Range("R5:Z" & LR).AutoFilter Field:=9, Criteria1:="Yes"
ws.Range("S5:Z" & LR).Offset(1, 0).SpecialCells(xlCellTypeVisible).EntireRow.Copy

ps.Range("A" & ps.Range("A" & ws.Rows.Count).End(xlUp).Offset(1).Row).PasteSpecial xlPasteValues


End Sub
© www.soinside.com 2019 - 2024. All rights reserved.