调用包含多个下划线的变量名称的子

时间:2017-01-10 15:23:26

标签: excel vba variables

目前,我正在开发一个子服务器,如果一个单元格值与工作表的名称相匹配,那么它将激活已经写入的一个子服务器。

所以,如果我选择"索引"在具有数据验证的单元格中,子将激活子名称"索引"这将创建工作表"索引"的pdf文件。子"索引"这会创建pdf文件。激活sub" Index"如果子名称中没有下划线,也可以工作。但我确实希望它与下划线一起使用,因为有些工作表的名称中有空格。例如;表"材料检查"与sub" Material_inspection"结合使用或表"材料测试报告"使用" Material_test_report"。

代码仅在我重置子名称后才有效。

代码:

Sub CreateSomePDF()

  Dim iMyValue As String
  iMyValue = Worksheets("Invulformulier").Range("A96").Value
  Application.Run iMyValue

End Sub

是否有可能使其有效?我几乎可以肯定,由于单个名称起作用,所以下划线是问题所在。

1 个答案:

答案 0 :(得分:2)

如果您的问题是工作表的名称中有空格而且子代表有下划线,为什么不在调用宏时在字符串中替换它们?

Sub CreateSomePDF()

  Dim iMyValue As String
  iMyValue = Replace(Worksheets("Invulformulier").Range("A96").Value, " ","_")
  Application.Run iMyValue

End Sub