首页 > 解决方案 > c# interop excel:将一维数组写入excel范围

问题描述

我想将一维数组复制到 excel 中的列范围。我正在interop为此目的使用。

我已经尝试过这些事情:

我试过使用 even range.value2,但是这些东西将数组中的第一个索引值复制到整个范围。

所以假设,如果范围中有 200 行并且数组包含整数 101-300,那么使用上述尝试的方法在整个范围内仅复制 101。

谁能帮我解决这个问题?如果有人可以向我解释这种奇怪的行为会更有帮助!提前致谢。

注意:我知道我可以通过for 循环来做到这一点,但这需要时间。我肯定想知道一种方法,它可以用不到一分钟的时间来迭代一百万行。

标签: c#arraysexcel-interop

解决方案


我真的不知道上述方法到底有什么问题。但我找到了解决方案:

Excel.Range range = sheetSource.UsedRange.Columns[columnIndx];
range.Value = application.WorksheetFunction.Transpose(Ary);

推荐阅读