提示用户select要复印的纸张

作为一个更大的macros的一部分,我有这样的代码:

  • 打开一个工作簿,
  • 将该工作簿的第一个工作表复制到当前工作簿中的一个新工作表中,
  • 然后closures新打开的工作簿。

此代码有效,但现在我想修改它, 以便用户可以select复制哪个表

这是我有的代码:

Dim wb3 As Workbook Set wb3 = ThisWorkbook Dim wb_mainFile As Workbook Dim strMainFile As String strMainFile = Range("G4").Value 'G4 is the cell that contains the path to the workbook that is to be opened Set wb_mainFile = Workbooks.Open(strMainFile) ThisWorkbook.Activate wb_mainFile.Sheets(1).Copy _ After:=wb3.Sheets(wb3.Sheets.Count) ActiveSheet.Name = "Sheet3" wb_mainFile.Close 

据我所知,没有办法select这样的表 – 所以这是一个黑客。

这要求用户在所需表单上select一个单元格:

 Sub Foo() Dim mySheet As Excel.Worksheet Set mySheet = Application.InputBox("Select a cell on the sheet you want to use:", Type:=8).Parent MsgBox "Chosen sheet is " & mySheet.Name End Sub 

你可以调出内置CommandBar的标签列表(点击左下angularpopup)

 Sub CrowsFlag() Dim cbTool As CommandBar Set cbTool = CommandBars("workbook tabs") cbTool.ShowPopup End Sub 

在这里输入图像说明