当使用 LotusScript 访问 ColumnValues(通过 NotesDocument 或 NotesViewEntry 访问的值的变体数组)时,某些数组元素可能包含一个或多个元素中的嵌入数组。例如:
doc.ColumnValues(0) = "A"
doc.ColumnValues(1) = ["A", "B"]
doc.ColumnValues(2) = 4
...
有没有办法一次性将所有数组值分配给一个数组?如果您将 ColumnValues 数组分配给变量变量,那么这仅在数组元素中没有嵌入数组数据时才有效,即:ColumnValues(1) = "AB" 而不是 "[A,B]" 例如:
dim v as variant
v = doc.ColumnValues
如果存在数组,则此分配失败,但如果所有元素都是标量则有效。一种解决方法是确保所有 ColumnValues 都是标量(不是数组),但这不能保证。我唯一的其他解决方法是遍历所有 ColumnValues 并检查数组:
For i = 1 to ubound(doc.ColumnValues) 'or other columcount var!
v=doc.ColumnValues(i)
if isarry(v) then
a=join(v,";")
else
a=v
end if
Next
以上方法有效,但对于许多列来说非常慢,有人有替代方法吗?