用于在Excel中选择工作表的对话框

时间:2016-07-15 16:31:20

标签: excel vba excel-vba

我正在尝试构建一个宏,它将工作表从一个工作簿复制到另一个工作簿中的工作表中。有没有办法可以使用VBA代码来手动选择我要复制的工作表?

现在宏工作,只要我在实际的VBA代码中输入完整的工作表名称。理想情况下,我希望宏允许我通过对话框选择工作表。我知道你可以复制/粘贴表格或其内容,但由于规模的原因,我工作的那些人不想这样做。

1 个答案:

答案 0 :(得分:3)

您可以使用Worksheets集合填充用户表单中的ListBox。这应该让你开始:

enter image description here

用户表单中的代码(!)

Private Sub UserForm_Initialize()

    Dim v As Worksheet

    For Each v In Worksheets
        UserForm1.lstWorksheets.AddItem v.Name
    Next

End Sub

Private Sub cmdSelectWorksheet_Click()
    MsgBox "You selected " & lstWorksheets.Value
End Sub