是否有任何功能允许我将二维字符串数组写入Excel工作表,但如果相应的值不是空字符串,则只“覆盖”Excel中的单元格?
我有一个应用程序执行此操作...它从我们的数据库中提取数据,将其放入二维数组,并将整个数组写入excel模板。写入的列是A到S,但在列Q中有一个当前被覆盖的公式,因为它不是从数据库中提取的。
我讨厌在程序中硬编码公式,所以我希望有办法完成我想要做的事情。我唯一的想法是尝试首先从工作表中读取范围,但我很想知道是否有某种功能可以解决这个问题。
编辑:要清楚,这是一个写入Excel的VB.Net程序。
答案 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