2014-11-03 29 views
0

我试图将单元格值从一个Excel表格复制到另一个表格中。为此,我写了下面的代码:如何使用vba复制excell单元格值

Dim p As Variant 

For p = 2 To 12000 

If ThisWorkbook.Sheets("Sheet1").Cells(p, 1).Value = ThisWorkbook.Sheets("Sheet2").Cells(p, 7).Value Then 


Sheet1.Cells(p, 9).Value = Sheet2.Cells(p, 7).Value 

End If 


Next p 

比较完成后,只有复制没有完成......请你帮我解决这个问题。

在此先感谢

回答

0

这是为我工作:

Dim p As Long 
For p = 2 To 12000 
    If ThisWorkbook.Sheets("Sheet1").Cells(p,1).Value = ThisWorkbook.Sheets("Sheet2").Cells(p,7).Value Then 
     ThisWorkbook.Sheets("Sheet1").Cells(p,9).Value = ThisWorkbook.Sheets("Sheet2").Cells(p,7).Value 
    End If 
Next p 
0

为什么不使用这样的:

ThisWorkbook.Sheets("Sheet1").Cells(p, 9).Value = ThisWorkbook.Sheets("Sheet2").Cells(p, 7).Value 
+0

已经尝试过这个......没有运气虽然 – user3305327 2014-11-03 08:20:09

+0

嗯,我想我的建议与你选择的@Matteo的答案是一样的(无论是“For”还是“If”)。所以,它应该工作。我应该提到对这些明显的代码行的省略。 – sudipto 2014-11-03 18:34:13