如何在另一个未激活的工作簿中添加工作表

时间:2021-03-21 16:42:58

标签: excel vba

有人可以帮助我吗,我尝试用 2 个文件打开 ABC.xlsm 和 KM.xlsm 编写代码 .这个工作簿是ABC.xlsm

sub copy()
Dim sh As Workbook
Dim tensheet As String
Set sh = Workbooks("KM.xlsm")
tensheet = Range("O2").Value
sh.Sheets.Add(After:=Sheets(Sheets.Count)).Name = tensheet
end sub

我收到此错误“运行时错误 1004 应用程序定义或对象定义错误” 如果我在添加新工作表之前添加“sh.active”但我不想这样做,则此代码将运行。有什么帮助吗?

1 个答案:

答案 0 :(得分:0)

尝试完全限定 Sheets 和 Sheets.Count。

Sub AddSheet()
Dim sh As Workbook
Dim tensheet As String

    Set sh = Workbooks("KM.xlsm")
    tensheet = Range("O2").Value
    sh.Sheets.Add(After:=sh.Sheets(sh.Sheets.Count)).Name = tensheet

End Sub