|
本帖最后由 房梁星人 于 2019-5-19 20:21 编辑
代码如下,SJJS是一个公共变量,为需要找的RANGE总长度(这个运行正常),问题在动态数组赋值这块,如果设定为静态数组时赋值没问题,但设定为动态数组时,后面的复制了之后前面的就莫名其妙的为空了,打个比方,如果给Arr(2)赋值时,Arr(1)就为空了.....搞了半天没搞清楚......
Private Sub ComboBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
Dim SJ As Variant, XuHao As Byte, EndName As Byte, Arr()
If Trim(ComboBox1.Text) = "" Then
MsgBox "请选择一个名字"
Exit Sub
End If
SJ = ComboBox1.Text
XuHao = 2
EndName = 1
Do While XuHao <> (SJJS + 1)
If Range("b" & XuHao).Value = SJ Then
ReDim Arr(1 To EndName + 1)
Arr(EndName) = Range("d" & XuHao).Value
EndName = EndName + 1
End If
XuHao = XuHao + 1
Loop
MsgBox Arr(1) & Arr(2) & Arr(3)
ComboBox2.List = Arr
End Sub
|
|