我在Excel工作簿上有2张纸:
在第一张表格中我有C号范围内的采购订单数量,有时会在B范围内有与采购订单相关的评论
在第二张表格中,我还购买了范围为C(PO)的订单,其中的评论范围为C.
纸张之间的某些PO是相同的。如果PO与VBA相同,我想将评论从第二张复制到第一张。
简而言之:如果PO Sheets1 = PO sheet2,那么将sheet2的注释复制到工作表1
我查看了不同的主题并测试了不同的代码,但我是VBA的初学者,所以我需要帮助。
我可以复制我测试的最后一个代码,并根据另一个主题进行定制,但它不起作用:
Sub copycomment()
Dim i As Long
Dim col1 As Long
Dim col2 As Long
Dim sheetOne As String
Dim sheetTwo As String
col1 = 3
col2 = 3
sheetOne = "Feuil1"
sheetTwo = "Feuil2"
lastrow1 = Sheets(sheetOne).Cells(Sheets(sheetOne).Rows.Count, col1).End(xlUp).Row
lastrow2 = Sheets(sheetTwo).Cells(Sheets(sheetTwo).Rows.Count, col2).End(xlUp).Row
For i = 2 To lastrow1
For j = 2 To lastrow2
If Sheets(sheetOne).Cells(i, col1).Value = Sheets(sheetTwo).Cells(j, col2).Value Then
Sheets(sheetOne).Cells(i, 6).Value = Sheets(sheetTwo).Cells(j, 2).Value
End If
Next
Next
End Sub
我希望我很清楚 提前感谢您的帮助!
答案 0 :(得分:0)
如果符合您的要求,请尝试此代码。
Sub copycomment()
Dim i As Long
Dim col1 As Long
Dim col2 As Long
Dim sheetOne As String
Dim sheetTwo As String
col1 = 3
col2 = 3
sheetOne = "Feuil1"
sheetTwo = "Feuil2"
lastrow1 = Sheets(sheetOne).Cells(Sheets(sheetOne).Rows.Count, col1).End(xlUp).Row
lastrow2 = Sheets(sheetTwo).Cells(Sheets(sheetTwo).Rows.Count, col2).End(xlUp).Row
For i = 2 To lastrow1
For j = 2 To lastrow2
If Sheets(sheetOne).Cells(i, col1).Value = Sheets(sheetTwo).Cells(j, col2).Value Then
Sheets(sheetOne).Cells(i, 6).Value = Sheets(sheetTwo).Cells(j, 2).Comment.Text 'Copies comment from sheettwo to sheetone
Exit For
End If
Next
Next
End Sub