将列中的数据复制到另一个工作表 – Excel上的VBA

我正在尝试创build一个工作簿,其中主页将从另外7个人的信息中提供。

基本上我试图得到这个代码我写了一些方向:

Private Sub UpdateSheet3_Click() Dim PolicyNumber As String, InsuredName As String Worksheets("Universal").Select PolicyNumber = Worksheets("Universal").Cells(A4.Count, 1).End(x1Up).Row InsuredName = Cells(B4.Count, 1).End(x1Up).Row Worksheets("Carriers").Select Worksheets("Carriers").Range("B2").Select If Worksheets("Carriers").Range("A4").Offset(1, 0) <> "" Then Worksheets("Carriers").Range("A4").End(xlDown).Select End If Worksheets("Carriers").Range("B2").Select ActiveCell.Value = PolicyNumber ActiveCell.Offset(0, 1).Select ActiveCell.Value = InsuredName Worksheets("Universal").Select Worksheets("Universal").Range("A4:B4").ClearContents End Sub 

什么即时通讯我试图做的是,我的button(这是在表“载体”)从单元格A4开始,从工作表“通用”PolicyNumber的值复制和向下,直到出现一个空行。

这将被粘贴到表格“载体”的单元格B2(或下一个空行)。

我在VBA有初学者的知识,我会感谢你的帮助。

我还有很多其他列,我想也复制(我试图做这个代码,InsuredName是第二个),但如果我可以通过第一列我可以找出其余的。

非常感谢!

你真的需要查看尽可能多的post或谷歌一些教程,因为在你的代码中有太多的错误。 我已经为你做了一件事,至less让你走了,不要吓唬你,但这只是做你的需要的基本副本。

 Private Sub UpdateSheet3_Click() Dim ws1 As Worksheet Dim ws2 As Worksheet Dim lastRow As Integer Dim PolicyNumber As Integer Dim InsuredName As Integer Set ws1 = Sheets("Universal") Set ws2 = Sheets("Carriers") ws1.[A1].Select lastRow = Range("A" & Rows.Count).End(xlUp).Row ws1.Range("A4:A" & lastRow).Copy ws2.Range("B1:B" & lastRow - 3) End Sub