Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/28.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/image-processing/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Vba 将当前活动行从一个工作表复制到另一个工作表_Vba_Excel_Worksheet - Fatal编程技术网

Vba 将当前活动行从一个工作表复制到另一个工作表

Vba 将当前活动行从一个工作表复制到另一个工作表,vba,excel,worksheet,Vba,Excel,Worksheet,我对将当前活动行从一个工作表复制到另一个工作表有疑问。假设我在表1中有以下列名称、地址、城市、电话、邮政编码,在表2中有类似的列。 假设我目前在第1页名称栏的第100行、第500行或第1000行。我只想将该行复制到工作表2中,并填充工作表2中的列。到目前为止,我有这个代码。请让我知道如何进行 Private Sub CommandButton1_Click() Dim CustomerName As String, Customeraddress As String, Customercity

我对将当前活动行从一个工作表复制到另一个工作表有疑问。假设我在表1中有以下列名称、地址、城市、电话、邮政编码,在表2中有类似的列。 假设我目前在第1页名称栏的第100行、第500行或第1000行。我只想将该行复制到工作表2中,并填充工作表2中的列。到目前为止,我有这个代码。请让我知道如何进行

Private Sub CommandButton1_Click()
Dim CustomerName As String, Customeraddress As String, Customercity As String, Custtel As String, Custzip As String
Worksheets("sheet1").Select
CustomerName = Range("A2")
Customeraddress = Range("B2")
Customercity = Range("C2")
Custtel = Range("D2")
Custzip = Range("E2")
Worksheets("sheet2").Select
Worksheets("Sheet2").Range("B4").Select
If Worksheets("Sheet2").Range("B4").Offset(1, 0) <> "" Then
Worksheets("Sheet2").Range("B4").End(xlDown).Select
End If
ActiveCell.Offset(1, 0).Select
ActiveCell.Value = CustomerName
ActiveCell.Offset(0, 1).Select
ActiveCell.Value = Customeraddress
ActiveCell.Offset(0, 1).Select
ActiveCell.Value = Customercity
ActiveCell.Offset(0, 1).Select
ActiveCell.Value = Custtel
ActiveCell.Offset(0, 1).Select
ActiveCell.Value = Custzip
Worksheets("Sheet1").Select
Worksheets("Sheet1").Range("C4").Select
End Sub
Private子命令按钮1\u单击()
Dim CustomerName作为字符串,Customeraddress作为字符串,Customercity作为字符串,Custtel作为字符串,Custzip作为字符串
工作表(“表1”)。选择
客户名称=范围(“A2”)
Customeraddress=范围(“B2”)
客户城市=范围(“C2”)
Custtel=范围(“D2”)
Custzip=范围(“E2”)
工作表(“表2”)。选择
工作表(“表2”)。范围(“B4”)。选择
如果工作表(“表2”).范围(“B4”).偏移量(1,0)”,则
工作表(“表2”)。范围(“B4”)。结束(xlDown)。选择
如果结束
ActiveCell.Offset(1,0)。选择
ActiveCell.Value=CustomerName
ActiveCell.Offset(0,1)。选择
ActiveCell.Value=Customeraddress
ActiveCell.Offset(0,1)。选择
ActiveCell.Value=Customercity
ActiveCell.Offset(0,1)。选择
ActiveCell.Value=custel
ActiveCell.Offset(0,1)。选择
ActiveCell.Value=Custzip
工作表(“表1”)。选择
工作表(“表1”)。范围(“C4”)。选择
端接头
命令按钮放置在Sheet1中

请尝试以下代码:

Private Sub CommandButton1_Click()
    Dim lastrow As Long

    With ThisWorkbook.Worksheets("Sheet2")
        lastrow = Application.Max(4, .Cells(.Rows.Count, "B").End(xlUp).Row + 1)
        .Range("B" & lastrow).Resize(, 5).Value = _
            Range("A" & ActiveCell.Row).Resize(, 5).Value
    End With
End Sub

@西莫科给你!!:)好的,您可以选择sheet1中的任意一行(例如row№100). 要将数据粘贴到sheet2的哪一行?在最后一个非空行之后的下一行?@simoco。我希望数据显示在Sheet2的下一个空行中。您当前的代码有什么问题?我注意到您将数据向右移动了一列—这就是您想要做的吗?哇!这绝对是钉子。太棒了,西莫科!!如果可以的话,你能给我解释一下代码吗。谢谢这太棒了!我想我应该问你更多:)@simoco祝贺10公里:)你着火了:)@mehow,谢谢:)我很高兴得到你的祝贺:)@simoco没问题,祝你旅途愉快:)