将Excel工作表移动或复制到另一个工作簿(目标工作簿使用变量命名)

时间:2016-08-30 20:31:42

标签: excel-vba vba excel

我正在尝试将excel工作表复制到另一个excel工作簿中。这通常不会太困难,除了我将工作表移动到使用变量保存的工作簿。

以下是我的一些代码:

Sheets.Add After:=Sheets(Sheets.Count)
ActiveCell.FormulaR1C1 = "a"
Sheets("Policy Search").Move After:=Workbooks(fname).Sheets(SheetName)

“策略搜索”将始终命名为相同,这是我试图移动的工作簿。但是,我试图将其移动到使用变量“fname”和工作表名称“SheetName”动态保存的文件。

每次我尝试运行这段代码时,我都会收到一个下标超出范围的错误。关于如何解决这个问题的任何想法?

谢谢!

1 个答案:

答案 0 :(得分:0)

试试这个:

Sub MoveSheet()
    Sheets("Policy Search").Select
    Sheets("Policy Search").Move After:=Workbooks(fname).Sheets(SheetName)
End Sub

假设“政策搜索”是活动表。