【问题标题】:Copy the Current active row from one worksheet to another将当前活动行从一个工作表复制到另一个
【发布时间】:2015-02-24 08:22:04
【问题描述】:

我有一个关于将当前活动行从一个工作表复制到另一个工作表的问题。假设我在 Sheet1 中有以下列名称、地址、城市、电话、邮政编码,而在 Sheet 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

【问题讨论】:

  • @Simoco 给你!! :)
  • 好的,您选择 sheet1 中的任意行(例如第 100 行)。您要在 sheet2 的哪一行粘贴数据?在最后一个非空行之后的下一个?
  • @simoco。我希望数据出现在 sheet2 的下一个空白行中
  • 您当前的代码有什么问题?
  • 我注意到您正在将数据向右移动一列——这是您想要做的吗?

标签: vba excel worksheet


【解决方案1】:

命令按钮放置在 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

【讨论】:

  • 哇!这绝对钉它。伟大的西莫科!如果可以的话,你能解释一下代码吗?谢谢!
  • 这太棒了!我想我应该问你更多:)
  • @simoco 恭喜 10K :) 你火了 :)
  • @mehow,谢谢:) 很高兴得到你的祝贺:)
  • @simoco 没问题,尽情享受吧:)
猜你喜欢
  • 2015-11-13
  • 1970-01-01
  • 1970-01-01
  • 2016-09-17
  • 2022-11-04
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多