将String()数组写入excel,排除空白值

时间:2015-04-15 14:00:45

标签: vb.net excel

是否有任何功能允许我将二维字符串数组写入Excel工作表,但如果相应的值不是空字符串,则只“覆盖”Excel中的单元格?

我有一个应用程序执行此操作...它从我们的数据库中提取数据,将其放入二维数组,并将整个数组写入excel模板。写入的列是A到S,但在列Q中有一个当前被覆盖的公式,因为它不是从数据库中提取的。

我讨厌在程序中硬编码公式,所以我希望有办法完成我想要做的事情。我唯一的想法是尝试首先从工作表中读取范围,但我很想知道是否有某种功能可以解决这个问题。

编辑:要清楚,这是一个写入Excel的VB.Net程序。

1 个答案:

答案 0 :(得分:1)

编辑:假设这是VBA?

你可以这样做,它使用INDEX来取代Q列之后的数组列。

Sub Sample()
Dim X

'create 2D array matching your size
X = Range("A1:S10").Value2

Range("A1:P10").Value2 = X

'add 2nd last column to R
Range("R1:R10").Value2 = Application.Index(X, 0, UBound(X, 2) - 1)
'add last column to S
Range("S1:S10").Value2 = Application.Index(X, 0, UBound(X, 2))
End Sub