如何使用VBA匹配两张图纸上的数字并输出到第三张图纸上?
我正在尝试编写一些VBA,它将查找表1和表2中出现的匹配数字,并将它们输出到表3。下面是我的代码,但没有结果。我做错了什么如何使用VBA匹配两张图纸上的数字并输出到第三张图纸上?,vba,excel,Vba,Excel,我正在尝试编写一些VBA,它将查找表1和表2中出现的匹配数字,并将它们输出到表3。下面是我的代码,但没有结果。我做错了什么 Sub match() Dim a As Integer dim i as long, ii as long a = 2 Dim lastrow As Long Dim ylastrow As Long ylastow = Sheets("Sheet2").UsedRange.Rows.Count last
Sub match()
Dim a As Integer
dim i as long, ii as long
a = 2
Dim lastrow As Long
Dim ylastrow As Long
ylastow = Sheets("Sheet2").UsedRange.Rows.Count
lastrow = Sheets("Sheet1").UsedRange.Rows.Count
for i = a to lastrow
for ii = a to ylastrow
if Sheets("Sheet1").Cells(i,1) = Sheets("Sheet2").Cells(ii,2) then
Sheets("Sheet3").range("A100000").xlup
End Sub
假设要将匹配的单元格连续按行复制到sheet3中 如果表3中的目标单元格设置不正确,则缺少
next ii
和next i
和end
这应该行得通
Sub match()
Dim a As Integer
Dim i As Long, ii As Long, j As Long
a = 2
j = 2
Dim lastrow As Long
Dim ylastrow As Long
Sheet1rows = Sheets("Sheet1").UsedRange.Rows.Count + 1
sheet2rows = Sheets("Sheet2").UsedRange.Rows.Count + 1
For i = a To Sheet1rows
For ii = a To sheet2rows
If Sheets("Sheet1").Cells(i, 1) = Sheets("Sheet2").Cells(ii, 1) Then
Sheets("Sheet3").Range("A" & j) = Sheets("Sheet1").Cells(i, 1)
j = j + 1
End If
Next ii
Next i
End Sub
假设要将匹配的单元格连续按行复制到sheet3中
如果表3中的目标单元格设置不正确,则缺少next ii
和next i
和end
这应该行得通
Sub match()
Dim a As Integer
Dim i As Long, ii As Long, j As Long
a = 2
j = 2
Dim lastrow As Long
Dim ylastrow As Long
Sheet1rows = Sheets("Sheet1").UsedRange.Rows.Count + 1
sheet2rows = Sheets("Sheet2").UsedRange.Rows.Count + 1
For i = a To Sheet1rows
For ii = a To sheet2rows
If Sheets("Sheet1").Cells(i, 1) = Sheets("Sheet2").Cells(ii, 1) Then
Sheets("Sheet3").Range("A" & j) = Sheets("Sheet1").Cells(i, 1)
j = j + 1
End If
Next ii
Next i
End Sub
假设要将匹配的单元格连续按行复制到sheet3中
如果表3中的目标单元格设置不正确,则缺少next ii
和next i
和end
这应该行得通
Sub match()
Dim a As Integer
Dim i As Long, ii As Long, j As Long
a = 2
j = 2
Dim lastrow As Long
Dim ylastrow As Long
Sheet1rows = Sheets("Sheet1").UsedRange.Rows.Count + 1
sheet2rows = Sheets("Sheet2").UsedRange.Rows.Count + 1
For i = a To Sheet1rows
For ii = a To sheet2rows
If Sheets("Sheet1").Cells(i, 1) = Sheets("Sheet2").Cells(ii, 1) Then
Sheets("Sheet3").Range("A" & j) = Sheets("Sheet1").Cells(i, 1)
j = j + 1
End If
Next ii
Next i
End Sub
假设要将匹配的单元格连续按行复制到sheet3中
如果表3中的目标单元格设置不正确,则缺少next ii
和next i
和end
这应该行得通
Sub match()
Dim a As Integer
Dim i As Long, ii As Long, j As Long
a = 2
j = 2
Dim lastrow As Long
Dim ylastrow As Long
Sheet1rows = Sheets("Sheet1").UsedRange.Rows.Count + 1
sheet2rows = Sheets("Sheet2").UsedRange.Rows.Count + 1
For i = a To Sheet1rows
For ii = a To sheet2rows
If Sheets("Sheet1").Cells(i, 1) = Sheets("Sheet2").Cells(ii, 1) Then
Sheets("Sheet3").Range("A" & j) = Sheets("Sheet1").Cells(i, 1)
j = j + 1
End If
Next ii
Next i
End Sub
感谢工作完美,但只是瓦纳知道你所说的这张表(“Sheet3”)是什么意思。范围(“A”和“j)=表(“Sheet1”)。单元格(i,1)我理解第一部分,但表(Sheet1)你为什么不再使用sheet2呢?谢谢你可以使用sheet1或sheet2,它们在这一点上具有相同的价值。谢谢工作得很好,但我想知道你所说的这张纸(“Sheet3”)是什么意思。范围(“a”和“j)=纸(“sheet1”)。单元格(i,1)我理解第一部分,但纸(sheet1)你为什么不再使用sheet2呢?谢谢你可以使用sheet1或sheet2,它们在这一点上具有相同的价值。谢谢工作得很好,但我想知道你所说的这张纸(“Sheet3”)是什么意思。范围(“a”和“j)=纸(“sheet1”)。单元格(i,1)我理解第一部分,但纸(sheet1)你为什么不再使用sheet2呢?谢谢你可以使用sheet1或sheet2,它们在这一点上具有相同的价值。谢谢工作得很好,但我想知道你所说的这张纸(“Sheet3”)是什么意思。范围(“a”和“j)=纸(“sheet1”)。单元格(i,1)我理解第一部分,但纸(sheet1)为什么您没有使用sheet2呢?再次感谢您,您可以使用sheet1或sheet2,它们在这一点上具有相同的值。