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

时间:2017-08-31 00:07:38

标签: excel vba excel-vba

我正在尝试创建一个工作簿,其中主要工作表将从其他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

我想要做的是,我的按钮(位于工作表“载体”)从“单元格A4”开始向下复制“通用”工作表中的PolicyNumber值,直到出现空白行。

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

我对VBA有初学者知识,非常感谢你的帮助。

我还有许多其他列也要复制(我尝试对此代码进行操作,InsuredName是第二个)但如果我能通过第一列我可以弄清楚其余的。

非常感谢!

1 个答案:

答案 0 :(得分:0)

您确实需要查看尽可能多的帖子或Google的一些教程,因为您的代码中存在太多错误。我已经为你找到了一些东西,至少是为了让你去,而不是吓唬你,但这只会根据你的需要做基本的复制。

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