在另一个子程序中使用字符串

问题描述 投票:0回答:1

我知道我不是第一个提出这个问题的人。我仍然找不到解决方案。 我的solidworks 有一些vba 代码,工作正常。但是,我想使用我在一个子程序和另一个子程序中定义的字符串。这似乎比我想象的要难。

我的代码 - 简化:

Public FolderName As String
Public Sub SaveFiles()
   FolderName = "SOLID"  
End Sub

Public Sub UserInput(Parameter1, Parameter2, Parameter3...as string) 'A lot of input from a userform
  For i = LBound(ArrayList) To UBound(ArrayList)
    Debug.Print "FolderName = ", FolderName 'THIS PRINTS EMPTY AND I WANT IT TO PRINT "SOLID"
  Next
End Sub

我使用公共子串和公共字符串。我无法将

FolderName
添加到
Sub UserInput(FolderName)
,因为这样我会收到编译错误“参数不可选”,而我的
Call UserInput()
则写在我的用户表单中

我可以做什么来解决这个问题?

vba string call solidworks
1个回答
0
投票
Public Sub UserInput(ParameterX As String, Optional FolderName As String)
  If FolderName = "" Then
    FolderName = "some default"
  End If

  doTheThings
End Sub
© www.soinside.com 2019 - 2024. All rights reserved.