【问题标题】:Copying a worksheet to another workbook using VBA使用 VBA 将工作表复制到另一个工作簿
【发布时间】:2017-04-07 11:12:53
【问题描述】:

我正在尝试从 VBA 所在的工作簿 (ThisWorkbook) 中复制一个工作表,并将其粘贴到用户打开的另一个工作簿 (ActiveWorkbook) 中。我写了一个函数,但我无法让它工作。我以前做过类似的事情,我已经搜索了互联网,但我找不到解决方案或为什么它让我失望。我做错了什么?

 Function workBooks() As String
    aWbkName = ActiveWorkbook.Name
    tWbkName = ThisWorkbook.Name

    Dim wbk1 As Workbook
    Dim wbk2 As Workbook

    Set wbk1 = tWbkName
    Set wbk2 = aWbkName

    wbk1.Sheet2.Copy After:=wbk2.Sheets(7)

End Function

【问题讨论】:

标签: vba excel


【解决方案1】:

试试这个,看看它是否有效。它将复制ThisWorkbook中的Sheet2并将其粘贴到ActiveWorkbook中的Sheet1之后

Option Explicit

Public Sub copy_sheet()

    Dim source_worksheet As Worksheet
    Set source_worksheet = ThisWorkbook.Worksheets("Sheet2")

    Dim target_worksheet As Worksheet
    Set target_worksheet = ActiveWorkbook.Worksheets("Sheet1")

    source_worksheet.Copy After:=target_worksheet

End Sub

【讨论】:

    【解决方案2】:

    您不需要所有的变量调光和分配:

    Sub workBooks()
        ThisWorkbook.Sheet2.Copy After:=ActiveWorkbook.Sheets(7)
    End Sub
    

    【讨论】:

    • 我很感激害羞的投票者解释我如何改进我的答案。谢谢
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-10-15
    • 2019-05-02
    • 2019-04-04
    • 2013-09-01
    • 1970-01-01
    相关资源
    最近更新 更多