我有一些存储在Collection和数组中的值。我想在表单上显示这些值。字典和数组中的值基本上是作为消息存储到用户的值,在执行宏之后他需要知道这些值。我尝试使用文本框这样做,但它并没有如此整齐地出现,每次都需要附加进入文本框的文本。此外,由于值存储在数组中,并且我遍历数组,因此文本会重复出现,而不仅仅是值。我的意思是对于数组的第二个值,我只需要显示第二个值,但它会附加第一个值。有没有其他方法可以做到这一点?或者我做错了什么?任何帮助将不胜感激。
编辑1 这是我到目前为止编写的代码 warningBox是文本框 totalRows,sheetArray,dummyArray都是数组 errorCollection是集合
For arrayIterator = 0 To UBound(totalRows)
If totalRows(arrayIterator) > 500 Then
warningBox.Text = " More values for" & sheetArray(arrayIterator)
End If
Next arrayIterator
arrayIterator = 0
For collectionIndex = 1 To errorCollection.Count
dummyArray = errorCollection(collectionIndex)
If UBound(dummyArray) > 0 Then
warningBox.Text = warningBox.Text & sheetArray(collectionIndex - 1) & "has value"
For arrayIterator = 0 To UBound(dummyArray)
warningBox.Text = warningBox.Text & dummyArray(arrayIterator)
Next arrayIterator
End If
Next collectionIndex
编辑2 该系列的内容如下 键:字符串值 值:变量数组
所以我想显示以下内容 1.数组中不在集合中的元素(totalRows) 2.集合中数组的元素。(dummyArray)
答案 0 :(得分:0)
而不是这个,它将集合项的值附加到文本框中的现有文本:
warningBox.Text = warningBox.Text & sheetArray(collectionIndex - 1) & "has value"
执行此操作,根据集合项的值分配文本框的.Text
属性:
warningBox.Text = sheetArray(collectionIndex - 1) & "has value"
<强>更新强>
这是一个黑暗中的镜头,但我想也许这会做你想要的,如果我正确猜测你想要取文本框并首先附加集合中的项目。所以你会有类似的东西:
"Text box text Collection.Item(1) has value"
然后你想追加数组中的所有项目,所以你会得到:
`“文本框文本Collection.Item(1)具有值:Array(0),Array(1),Array(2),Array(3)”
要做到这一点,而不是迭代数组(这是问题!)使用Join
函数将数组强制转换为分隔字符串,只对整个数组执行一次追加:
If UBound(dummyArray) > 0 Then
warningBox.Text = warningBox.Text & sheetArray(collectionIndex - 1) & "has value"
warningBox.Text = warningBox.Text & Join(dummyArray, ", ")
End If