有人可以帮我一个宏吗?我想将一些选定的工作表(隐藏的&可见)移动和/或复制到新的工作簿中,但由于我一次打开几个工作簿,我希望能够从所有打开的工作簿中选择工作表,下拉菜单并移动和/或复制到新的工作簿。我想移动一些并复制一些工作表,因此在选择框中需要两个选项。宏将所选工作表复制和/或移动到新的工作簿
请帮忙,因为我已经把我的头撞到了它,并没有得到任何好处。
我曾尝试以下:
Sub CopySheet()
Dim i As Integer, x As Integer
Dim shtname As String
'i = Application.InputBox("Copy how many times?", "Copy sheet", Type:=1)
'For x = 0 To i - 1
ActiveSheet.Copy After:=Sheets(Sheets.Count)
shtname = InputBox("What's the new sheet name?", "Sheet name?")
ActiveSheet.Name = shtname
'Next x
End Sub
但是,这将意味着我必须每次键入每个工作表名称。
亚当:虽然我尝试运行你的代码,它给了我一个错误 - variable not specified in row Private Sub btnSubmit_Click()
如何克服呢?
我还是不明白亚当。我对宏很新,我可能在解释你的指令时做错了什么。你能建议像所有包含在一个和运行?
到底在哪原代码,我需要将此代码粘贴
Private Sub btnSubmit_Click()
End Sub
你试过了什么? – Jacob
Private Sub btnSubmit_Click() - >您需要在工作表中有一个名为btnSubmit的按钮让@ Adam的代码正常工作... –
确保您已添加复选框进行复制,并且此复选框被命名为“chkCopy”。确保“名称”属性是“chkCopy”,而不是标题。如果您输入“我”,复选框的名称应出现在代码完成建议的结果列表中。 –