Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Arrays 如何将Excel行作为一维对象数组导入VB.net_Arrays_Excel_Vb.net - Fatal编程技术网

Arrays 如何将Excel行作为一维对象数组导入VB.net

Arrays 如何将Excel行作为一维对象数组导入VB.net,arrays,excel,vb.net,Arrays,Excel,Vb.net,我试图从已经打开的excel电子表格中提取一行数据,以便与现有的1D值数组进行比较。据我所知,当我试图拉一个范围,如 Dim excelArray(49) as object excelArray = sheet1.Range("B3", "AY3").Value 它返回一个2d数组,即使它只有一行。由于此原因,我的代码中的这一行出现了错误。我需要将它与另一个已经填充的数组(实际上是一个单数组)进行比较。上面的excel行在每个单元格中还包含一行单数 Dim otherArray(49) as

我试图从已经打开的excel电子表格中提取一行数据,以便与现有的1D值数组进行比较。据我所知,当我试图拉一个范围,如

Dim excelArray(49) as object
excelArray = sheet1.Range("B3", "AY3").Value
它返回一个2d数组,即使它只有一行。由于此原因,我的代码中的这一行出现了错误。我需要将它与另一个已经填充的数组(实际上是一个单数组)进行比较。上面的excel行在每个单元格中还包含一行单数

Dim otherArray(49) as object
是否有一种方法可以做到这一点,而不涉及以下内容

    For i As Integer = 2 To 51
        indexJ = i - 2
        excelArray(indexJ) = sheet1.Cells(3, j).value
    Next j

我不希望以上述方式执行此操作,因为我使用多个大型阵列多次执行此操作。一个单元接一个单元的过程似乎需要很长时间。

ReDim
Preserve
?只需包含第二个维度,即使它始终是1,就像在
excelarray(indexJ,1)
@PeterT中一样,但是我如何比较这两个数组呢?一个是一维,另一个是二维。最终,我需要这个数组在以后变为1。如果excelarray(indexJ,1)=otherArray(indexJ),则在loop@PeterT但我以后需要从excel数据将1D数组发送回opc服务器。我不认为有一种简单的方法可以在不循环的情况下将VB.net 2d数组转换为1d,而这正是我最初试图避免的。