Vérifier si un tableau est vide

Bonjour à tous,

J'aimerais vérifier si un tableau Tb() est vide.

alors j'ai utilisé la ligne :

 If UBound(Tb) = 0 Then

qui me déclenche une erreur :

L'indice n'ppartient pas à la sélection

le code complet :

Sub test()
    Dim Tb()
    With Feuil1
        If .[O2] <> "" Then
            Tb = .Range("O2:W" & .Range("O" & .Rows.Count).End(xlUp).Row).Value
        End If
    End With
    'MsgBox "Portée de Tb() : " & UBound(Tb)
    ' si Tb est vide en sort de la procédure
    If UBound(Tb) = 0 Then
        Exit Sub
    Else
        MsgBox "Tb n'est pas vide"
    End If
End Sub

Merci d'avance.

Bonsoir

C'est quoi vide : Non initialisé ou aucune valeur dans la tableau ?

Tu testes si O2 est vide --> Cela indique si le tableau est initialisé

Essayes

Sub test()
Dim Tb()
  With Feuil1
    If .[O2] <> "" Then
      Tb = .Range("O2:W" & .Range("O" & .Rows.Count).End(xlUp).Row).Value
      MsgBox "Tb n'est pas vide"
    Else
      MsgBox "Tb est vide"
      Exit Sub
    End If
  End With
End Sub

Bonsoir tout le monde,

Une autre approche :

Sub test()
    Dim Tb(), xx
    With Feuil1
        If .[O2] <> "" Then
            Tb = .Range("O2:W" & .Range("O" & .Rows.Count).End(xlUp).Row).Value
        End If
    End With

    On Error Resume Next
    xx = LBound(Tb, 1)
    If xx = "" Then
        Exit Sub
    Else
        MsgBox "Tb n'est pas vide"
    End If
End Sub

Bonsoir Banzai64, Yvouille,

Merci de vos réponses respectives.

Rechercher des sujets similaires à "verifier tableau vide"