vbadynamic地在同一个文件夹中打开文件

是否有可能在一个文件夹中有许多工作表,例如Tom Dick和Harry,还有第四个称为admin。 pipe理员有一些数据input单元其中之一有一个下拉菜单,select汤姆迪克或哈利。 那么当macros被触发时,它会在相关的工作表上做什么? 我正在快速学习如何从其他所有的QA做这些东西,但是我找不到任何具体的东西。 我读过这可能工作:

Workbooks.Open文件名:= ThisWorkbook.Path&“Tom.xls”

但是,如何让它变得更加dynamic,以便能够根据下拉select打开迪克或哈利?

在期待中欢呼:-)

让我在这里稍微扩展一下我的评论。 首先,我们假定在一个文件夹中有四个工作簿:“Tom”,“Dick”,“Harry”和“admin”。假设您在工作簿“admin”中input数据的工作表也被称为“admin在工作表“admin”中,在单元格A1中有数据validation,允许用户从三个string中select一个:“Tom”,“Dick”和“Harry”,我会这样做:

 Dim admin as Workbook, wb as Workbook Dim str as String Set admin = Thisworkbook 'assuming you are writing this code in the workbook admin, which seems to be the case str = admin.Sheets("admin").Range("A1").Value2 Set wb = Workbooks.Open(admin.Path & "\" & str & ".xls") 'assuming the files are .xls, just change the extension if they are otherwise 

鉴于此,您有一个工作簿variableswb ,它允许您在打开工作簿后对其执行操作。