在vb.net中将Double值转换为Array

时间:2014-11-26 07:29:06

标签: vb.net excel

我有vb.net应用程序,它从excel中获取数据并执行一些操作。 我使用excel对象Range来获取excel的值。 下面是我正在使用的代码行,

    xlsRangetrans = xlsWorkbook.Worksheets(SHEET_1).Range("Range1")
    Dim transArray(,) As Object = xlsRangetrans.Value

如果Range1中有多个值,则上面的代码会成功运行。 但如果我只有一个值,我就会收到错误。

例如:xlsRangetras.value有“123.0,124.0,没什么,没什么”,因为System.Array成功运行

但如果xlsRangetras.value的“123.0”为Double,则会给我错误。

如何在我的情况下将Double值转换为Array。

请帮忙。

1 个答案:

答案 0 :(得分:0)

    Dim helper As Object = xlsRangetrans.Value
    Dim transArray(,) As Object = _
        If(TypeOf helper Is Object(,), helper, {{DirectCast(helper, Object)}})

<强>更新

显然,旧的.NET版本中不存在If运算符。在这种情况下,这段代码可能会有所帮助。

    Dim helper As Object = xlsRangetrans.Value
    Dim transArray(,) As Object
    If TypeOf helper Is Object(,) Then
        transArray = helper
    Else
        transArray = {{DirectCast(helper, Object)}}
    End If