ARRAY DINAMICO - CONFERIR INICIALIZACAO
Preciso testar se um array dinà ¢mico foi inicializado:
Dim sArray() as string
Não dá para usar Ubound(), nem Nothing, nem Null...
Será que terei que interceptar um erro "<Subscript out of range>"?
Dim sArray() as string
Não dá para usar Ubound(), nem Nothing, nem Null...
Será que terei que interceptar um erro "<Subscript out of range>"?
eu faço assim :
Private Function ArrayOK(Vetor as Variant) As Boolean
On Error Resume Next
Dim X As Integer
X = UBound(Vetor)
If Err.Number = 0 Then
ArrayOK = True
Else
Err.Clear
End If
On Error GoTo 0
End Function
Private Function ArrayOK(Vetor as Variant) As Boolean
On Error Resume Next
Dim X As Integer
X = UBound(Vetor)
If Err.Number = 0 Then
ArrayOK = True
Else
Err.Clear
End If
On Error GoTo 0
End Function
é uma boa solução genérica, porém, acho mais fácil definir um flag e setá-lo como true qdo o array for inicializado. Depois testar o flag. Foi o que eu usei para solucionar.
Infelizmente ainda não posso usar o VB.Net, pois uma conversão de um sistema grande é praticamente impossÃvel. No VB.Net, como o array age como objeto, dá para testá-lo usando Nothing.
Valeu pela ajuda.
Infelizmente ainda não posso usar o VB.Net, pois uma conversão de um sistema grande é praticamente impossÃvel. No VB.Net, como o array age como objeto, dá para testá-lo usando Nothing.
Valeu pela ajuda.
E se você usar uma collection, o que acha?
Tópico encerrado , respostas não são mais permitidas