【问题标题】:copy a worksheet into another workbook using macro使用宏将工作表复制到另一个工作簿
【发布时间】:2015-02-24 03:11:52
【问题描述】:
With Application.FileDialog(msoFileDialogOpen)
    .Filters.Clear
    .Filters.Add "Excel 2002-03", "*.xls", 1
    .Filters.Add "Excel 2007", "*.xlsx; *.xlsm; *.xlsa", 2
    .AllowMultiSelect = False
    .Show



    If .SelectedItems.Count > 0 Then
        Workbooks.Open .SelectedItems(1)
        Set wkbSourceBook = ActiveWorkbook
        Set rngSourceRange = Application.InputBox(prompt:="Select source range", Title:="Source Range", Default:="A1", Type:=8)
        wkbCrntWorkBook.Activate
        Set rngDestination = Application.InputBox(prompt:="Select destination cell", Title:="Select Destination", Default:="A1", Type:=8)
        rngSourceRange.Copy rngDestination
        rngDestination.CurrentRegion.EntireColumn.AutoFit
        wkbSourceBook.Close False
    End If

End With

我正在创建一个对话框以将文件名作为输入,然后需要将完整的工作表复制到另一个工作簿,而不是选择范围和内容。如何做到这一点

【问题讨论】:

  • 只是想知道我的回答是否有帮助。

标签: vba excel


【解决方案1】:

您可以使用Worksheet 对象的Copy 方法。

wkbSourceBook.Sheets(1).Copy After:=wkbCrntWorkBook.Worksheets(1)

您可以按名称选择所需的任何工作表。它将使用现有名称进行复制,如果已存在将变为“名称(2)”。然后你可以从那里重命名它。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-03-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多