excel - 如果数字匹配,将 Sheet1 P 列的内容复制到 Sheet 2
问题描述
我正在使用下面的代码。我的目标是改变这一行:
cell.EntireRow.Copy Sheets("Sheet3").Range("A" & Rows.Count).End(xlUp).Offset(1, 0)
如果 Sheet1 A2 中的数字与 Sheet2 A2 匹配
,则将数据从 Sheet1 P2 复制到 Sheet2 P2
(如果 Sheet1 A3 = Sheet2 A3 THEN 将 Sheet1 P3 一直复制到 Sheet2 P3,则连续复制)。
Sub Sheet1Sheet2Compare()
Dim lRow, x As Long
Sheets("Sheet1").Select
lRow = Range("A1").End(xlDown).Row
For Each cell In Range("A2:A" & lRow)
x = 2
Do
If cell.Value = Sheets("Sheet2").Cells(x, "A").Value Then
cell.EntireRow.Copy Sheets("Sheet3").Range("A" & Rows.Count).End(xlUp).Offset(1, 0)
End If
x = x + 1
Loop Until IsEmpty(Sheets("Sheet2").Cells(x, "A"))
Next
End Sub
解决方案
尝试这个
Sub Sheet1Sheet2Compare()
Dim lRow As Integer, x As Integer, i As Integer
Dim sht1 As Worksheet, sht2 As Worksheet
Set sht1 = ThisWorkbook.Worksheets("Sheet1")
Set sht2 = ThisWorkbook.Worksheets("Sheet2")
lRow = sht1.Range("A" & Rows.Count).End(xlUp).Row
For i = 1 To lRow
If sht1.Range("A" & i).Value = sht2.Range("A" & i).Value Then sht2.Range("P" & i).Value = sht1.Range("P" & i).Value
Next i
End Sub
推荐阅读
- java - 图形背景时 Codenameone 中的 TextField 背景透明度
- html - 如何在 *ngFor 中每 3 个元素后添加一个 div
- eclipse - Eclipse:导入多个 gradle git 项目
- php - 如何解析内部重定向
- rabbitmq - RabbitMQ + MassTransit:如何从处理中取消排队的消息?
- animation - 任何人都可以帮助我理解 lua 中的这个动画 2d 代码吗?
- python - 如何通过 Selenium 和 Python 输入搜索文本并从搜索结果中检索值
- excel - Excel/VBA - 在求解器循环中更新 SUMPRODUCT(和其他)选择器
- javascript - 我正在使用 map 来渲染数组,但它总是给出最后一个元素
- android - 从 SQLite 表中获取价值