在Excel-Vba中获取数组的元素

时间:2018-03-26 03:56:03

标签: excel-vba vba excel

我一直在尝试在以下代码中获取数组的元素。

 Public SetDeviceInfo(ByVal TLPTestVoltage As String, ByVal rng As Range = Nothing)

        TLPTestVoltage = rng.Cells(7) 'Value passed is 7-50-21
        Dim TLPTV As String
        Dim LArray() As String 'Dim for output array
        LArray = Split(TLPTestVoltage, "-") 'split on basis of ":" char
        If Application.WorksheetFunction.IsNumber(TLPTestVoltage) = True Then
           TLPTV = LArray(1)
        End If
        LogInfo "Set TLPTestVoltage: " & TLPTestVoltage  
        LogInfo "TLPTV:" & TLPTV

 End Sub

上述代码的o / p为:

设置TLPTestVoltage:7-50-21

TLPTV:

任何人都可以解释从上面的代码中获取数组元素的错误。输出为零。我也不是我的Vba错误。

1 个答案:

答案 0 :(得分:0)

问题是Application.WorksheetFunction.IsNumber(TLPTestVoltage)始终为false,因为TLPTestVoltage是一个字符串。如果在if语句内的行上设置断点,则会看到永远不会到达断点。你必须重新考虑你用if语句做的事情。由于我不知道您的应用程序的需求是什么,我不确定具体建议是什么。