Excel VBA:如何访问和控制“图纸select”对话框?

当我的VBA脚本找不到要使用哪个工作表时,它将打开一个Excel对话框:“select工作表”。 这是太棒了! 如何以编程方式控制并使用“图纸select”对话框?

我正在编写一个使用的代码

Application.FileDialog(msoFileDialogFilePicker) 

..设置一个variables=一个选定的文件名,但我也试图设置一个variables到该文件中的某个工作表。 全部不用打开文件。

我想要的工作stream程是:

  1. 文件对话框打开 – >select一个Excel文件>确定
  2. 工作表对话框打开(如Excel的“select表”对话框) – >在该Excel文件中select一个工作表>确定

我已经通过Application.Dialog(xl …)的东西,但无法find正确的选项。

请帮忙! 谢谢。

你可以尝试一下( 这里是 Tom Urtis的改编forms)

 Option Explicit Dim mySht As Worksheet Sub SelectSheet() Dim cmdBar As CommandBar Dim cmdBarBtn As CommandBarButton Dim sht As Worksheet RegDel Set cmdBar = Application.CommandBars.Add("Register", msoBarPopup) For Each sht In ThisWorkbook.Worksheets Set cmdBarBtn = cmdBar.Controls.Add cmdBarBtn.Caption = sht.Name cmdBarBtn.Style = msoButtonCaption cmdBarBtn.OnAction = "SelectThatSheet" Next sht cmdBar.ShowPopup MsgBox "you selected sheet '" & mySht.Name & "'" End Sub Sub SelectThatSheet() Set mySht = Worksheets(Application.Caller(1)) RegDel End Sub Sub RegDel() On Error Resume Next Application.CommandBars("Register").Delete On Error GoTo 0 End Sub