传递要在CASE语句中使用的字符串

时间:2015-08-16 01:59:46

标签: vba

这是我第一次在这里发帖提问。我正在写一个MS Excel VBA项目,我在子程序之间传递一个字符串。在第二个子例程中,我使用字符串来确定CASE条件。 EG 4000至9999; 4050至5000,5050; 5051至6000,6501至7000是三个例子。当在CASE之后键入这些字符串时,它可以工作,但是将值作为字符串传递并不是。我的项目涉及多次运行子程序,每次都需要更改case语句。有什么建议吗?

非常感谢 NC 这是我的代码示例。我遗漏了所有的暗淡和计算 - 我很肯定这些都无济于事, 感谢

Sub Calling_Sub ()
'Operating Income
Title = "Operating Income"
GL_Range = "5000 to 9499"
add_me_up Title, GL_Range

'Other Income
Title = "Other Income"
GL_Range = "4050 to 5000, 5050"
add_me_up Title, GL_Range

'Debts
Title = "Debts"
GL_Range = "5051 to 6000, 6051 to 7000"
add_me_up Title, GL_Range

'Other
Title = "Other"
GL_Range = "8051, 8055, 8070, 8075"
add_me_up Title, GL_Range

'and so on and so forth for all the other combinations
End Sub


Sub add_me_up (Title as string, GL_Range as string)

...

For Each lrowC In lrngC.Cells       'pivot table data rows

   Select Case lrowC.Cells.Offset(0, 1)

        Case ****GL_Range****
            If lrowC.Cells(1, 1) = Fin_Year Then      'current month & YTD
                Select Case Period
                    Case 1
...

end sub

0 个答案:

没有答案