2

我有一个工作簿,上面有两个工作表。工作表“Sheet2”有新月份的数据,工作表“审计分数”是我将数据复制到的工作表。我写的代码是假设检查“Sheet2”列c中的设备名称并在“Audit scores”中找到匹配的名称,然后从Sheet2列e复制值并将其粘贴到Audit相应行的最后一列分数。我遇到的问题是“审核分数”中粘贴的值不是“Sheet2”中的正确值。希望这个错误是一个简单的错误,我只是对它视而不见。

这是代码:

Sub newdata()

Dim x As Variant, y As Long, z As Long, v As Date

LRow = Cells(Rows.Count, 2).End(xlUp).Row
Lcol = Cells(3, Columns.Count).End(xlToLeft).Column
v = Date
Worksheets("Audit scores").Activate
Cells(1, Lcol + 1).EntireColumn.Insert
Cells(1, Lcol + 1).Value = v
For y = 1 To LRow
    For z = 1 To LRow
        If Cells(z, "C").Value = Worksheets("Audit scores").Cells(y, "C").Value Then
            Worksheets("Sheet2").Cells(z, "E").Copy Destination:=Worksheets("Audit scores").Cells(y, Lcol + 1)
        Else:
        End If
    Next z
Next y
End Sub

感谢你给与我的帮助。

4

1 回答 1

1

您已激活Audit scores,但您的支票未与 Sheet2 核对。

If Cells(z, "C").Value = Worksheets("Audit scores").Cells(y, "C").Value Then

应该

If Worksheets("Sheet2").Cells(z, "C").Value = _
     Worksheets("Audit scores").Cells(y, "C").Value Then

(为了便于阅读,分成两行)

于 2013-07-18T13:23:42.970 回答