如何使用选定的combobox项目作为公式中的参考

我有一个工作簿中有几个静态工作表,但它也需要用户导入一些工作表,我不知道他们将导入多less工作表。 导入的图纸将具有相同的格式。

我正在尝试开发一个公式,可以使用导入的图纸名称作为参考,以便公式可以在导入的图纸中查找数据。

现在我有一个dynamic的combobox,其上有所有的图纸名称。 我想写一个代码,让我抓住用户选定的工作表(从combobox),然后在公式中使用它。

我在网站上find了下面的代码,但是不是某些对象,我有一个dynamic数量的对象(工作表)

Dim ws as Worksheet Dim sheetName as ComboBox Dim shtName as String Set ws = Worksheets("Analysis Sheet") Set sheetName = ws.OLEObjects("NameFromActiveXProperties").Object shtName = sheetName.Value 

由于公司政策,我无法上传我的工作表。

其中一个公式是MATCH('Analysis Sheet'!$ A $ 9&“*”, shtName !$ A $ 10:$ A $ 136)其中shtName是我想设置的variables, ComboBox。 任何人都可以帮助我吗?

我不善于描述问题。 请让我知道,如果有什么不清楚。 非常感谢你!

帮助appreicated!

有几种方法可以在这里使用。 最简单的方法是将INDIRECT工作表函数与返回工作表名称的函数结合使用(您只能在此隐式命名):

 =MATCH('Analysis Sheet'!$A$9 & "*", INDIRECT("'" & shtName() & "'" & "!$A$10:$A$136")) 

另外,你可以修改你的shtName函数:

 Public Function shtName(SheetRange as string) as range Dim ws as Worksheet Dim sheetName as ComboBox Dim shtName as String Set ws = Worksheets("Analysis Sheet") Set sheetName = ws.OLEObjects("NameFromActiveXProperties").Object shtName = worksheets(sheetName.Value).Range(SheetRange) End Function 

…然后使用它:

 =MATCH('Analysis Sheet'!$A$9&"*", shtName("$A$10:$A$136"))