Sub test() Dim tabl(2) tabl(0) = "toto" tabl(1) = "titi" tabl(2) = "titi" Var = Join(tabl, "") If Join(tabl, "") = "" Then MsgBox "vide" Else MsgBox "rempli" End If End Sub
"Emcy" a écrit dans le message de news: O3iqBjv$
bonjour,
existe t-il un moyen de voir si une variable tableau (vba) est vide sans utiliser les OnError ?
Bonjour.
Est que ce genre de test te convient ?
Sub test()
Dim tabl(2)
tabl(0) = "toto"
tabl(1) = "titi"
tabl(2) = "titi"
Var = Join(tabl, "")
If Join(tabl, "") = "" Then
MsgBox "vide"
Else
MsgBox "rempli"
End If
End Sub
"Emcy" <toto@bla.com> a écrit dans le message de news:
O3iqBjv$FHA.3372@TK2MSFTNGP12.phx.gbl...
bonjour,
existe t-il un moyen de voir si une variable tableau (vba) est vide sans
utiliser les OnError ?
Sub test() Dim tabl(2) tabl(0) = "toto" tabl(1) = "titi" tabl(2) = "titi" Var = Join(tabl, "") If Join(tabl, "") = "" Then MsgBox "vide" Else MsgBox "rempli" End If End Sub
"Emcy" a écrit dans le message de news: O3iqBjv$
bonjour,
existe t-il un moyen de voir si une variable tableau (vba) est vide sans utiliser les OnError ?
Michel Gaboly
Bonjour Emcy
Cela dépend de ce que tu appelles une variable tableau et de la façon dont elle a été définie.
Avec ce code :
Private Sub Tableaux() Dim Mat1, Mat2(0), Mat3() Mat1 = Array() MsgBox UBound(Mat1) MsgBox UBound(Mat2) MsgBox UBound(Mat3) End Sub
Mat1, sans parenthèse est un Variant auquel on affecte un tableau vide
Mat2, avec parenthèses est défini directement comme un tableau de Variant à une dimension.
Mat3, avec parenthèses est défini directement comme un tableau de Variant non dimensionné.
UBound(Mat1) est égal à -1, tandis que UBound(Mat2) est égal à 0 (indice maximal), tandis que UBound(Mat3) déclenche une erreur.
bonjour,
existe t-il un moyen de voir si une variable tableau (vba) est vide sans utiliser les OnError ?
-- Cordialement,
Michel Gaboly www.gaboly.com
Bonjour Emcy
Cela dépend de ce que tu appelles une variable tableau et de la façon
dont elle a été définie.
Avec ce code :
Private Sub Tableaux()
Dim Mat1, Mat2(0), Mat3()
Mat1 = Array()
MsgBox UBound(Mat1)
MsgBox UBound(Mat2)
MsgBox UBound(Mat3)
End Sub
Mat1, sans parenthèse est un Variant auquel on affecte un tableau vide
Mat2, avec parenthèses est défini directement comme un tableau de
Variant à une dimension.
Mat3, avec parenthèses est défini directement comme un tableau de
Variant non dimensionné.
UBound(Mat1) est égal à -1, tandis que UBound(Mat2) est égal à 0 (indice
maximal), tandis que UBound(Mat3) déclenche une erreur.
bonjour,
existe t-il un moyen de voir si une variable tableau (vba) est vide sans
utiliser les OnError ?
Cela dépend de ce que tu appelles une variable tableau et de la façon dont elle a été définie.
Avec ce code :
Private Sub Tableaux() Dim Mat1, Mat2(0), Mat3() Mat1 = Array() MsgBox UBound(Mat1) MsgBox UBound(Mat2) MsgBox UBound(Mat3) End Sub
Mat1, sans parenthèse est un Variant auquel on affecte un tableau vide
Mat2, avec parenthèses est défini directement comme un tableau de Variant à une dimension.
Mat3, avec parenthèses est défini directement comme un tableau de Variant non dimensionné.
UBound(Mat1) est égal à -1, tandis que UBound(Mat2) est égal à 0 (indice maximal), tandis que UBound(Mat3) déclenche une erreur.
bonjour,
existe t-il un moyen de voir si une variable tableau (vba) est vide sans utiliser les OnError ?
-- Cordialement,
Michel Gaboly www.gaboly.com
Michel Gaboly
Bonjour Daniel,
Je ne sais pas pourquoi, mais on oublie souvent la fonction iif, dont la syntaxe est la même que celle de la fonction SI() des feuilles de calcul. Elle permet de rendre le code bien + concis :
Msgbox IIf(Join(tabl, "") = "", "Vide", "Rempli")
Une précision d'autre part : Join fait partie des fonctions liées à VB6.
Elle n'est donc disponible ni avec Excel 97, ni avec les versions Mac ;-))
PS - Tu as défini une variable, var, mais tu ne l'utilises pas dans ton test ;-))
Bonjour. Est que ce genre de test te convient ?
Sub test() Dim tabl(2) tabl(0) = "toto" tabl(1) = "titi" tabl(2) = "titi" Var = Join(tabl, "") If Join(tabl, "") = "" Then MsgBox "vide" Else MsgBox "rempli" End If End Sub
"Emcy" a écrit dans le message de news: O3iqBjv$
bonjour,
existe t-il un moyen de voir si une variable tableau (vba) est vide sans utiliser les OnError ?
-- Cordialement,
Michel Gaboly www.gaboly.com
Bonjour Daniel,
Je ne sais pas pourquoi, mais on oublie souvent la fonction iif, dont la
syntaxe est la même que celle de la fonction SI() des feuilles de
calcul. Elle permet de rendre le code bien + concis :
Msgbox IIf(Join(tabl, "") = "", "Vide", "Rempli")
Une précision d'autre part : Join fait partie des fonctions liées à VB6.
Elle n'est donc disponible ni avec Excel 97, ni avec les versions Mac ;-))
PS - Tu as défini une variable, var, mais tu ne l'utilises pas dans ton
test ;-))
Bonjour.
Est que ce genre de test te convient ?
Sub test()
Dim tabl(2)
tabl(0) = "toto"
tabl(1) = "titi"
tabl(2) = "titi"
Var = Join(tabl, "")
If Join(tabl, "") = "" Then
MsgBox "vide"
Else
MsgBox "rempli"
End If
End Sub
"Emcy" <toto@bla.com> a écrit dans le message de news:
O3iqBjv$FHA.3372@TK2MSFTNGP12.phx.gbl...
bonjour,
existe t-il un moyen de voir si une variable tableau (vba) est vide sans
utiliser les OnError ?
Je ne sais pas pourquoi, mais on oublie souvent la fonction iif, dont la syntaxe est la même que celle de la fonction SI() des feuilles de calcul. Elle permet de rendre le code bien + concis :
Msgbox IIf(Join(tabl, "") = "", "Vide", "Rempli")
Une précision d'autre part : Join fait partie des fonctions liées à VB6.
Elle n'est donc disponible ni avec Excel 97, ni avec les versions Mac ;-))
PS - Tu as défini une variable, var, mais tu ne l'utilises pas dans ton test ;-))
Bonjour. Est que ce genre de test te convient ?
Sub test() Dim tabl(2) tabl(0) = "toto" tabl(1) = "titi" tabl(2) = "titi" Var = Join(tabl, "") If Join(tabl, "") = "" Then MsgBox "vide" Else MsgBox "rempli" End If End Sub
"Emcy" a écrit dans le message de news: O3iqBjv$
bonjour,
existe t-il un moyen de voir si une variable tableau (vba) est vide sans utiliser les OnError ?
-- Cordialement,
Michel Gaboly www.gaboly.com
Daniel
Je ne sais pas pourquoi, mais on oublie souvent la fonction iif
Bonjour, Michel. C'est à dire que pour l'avoir oublié, il faut l'avoir connue. Daniel
Je ne sais pas pourquoi, mais on oublie souvent la fonction iif
Bonjour, Michel.
C'est à dire que pour l'avoir oublié, il faut l'avoir connue.
Daniel
mon cas est pour Mat3 : y a t-il un moyen de ne pas avoir à utliser On Error ?
"Michel Gaboly" a écrit dans le message de news: O%23i470v$
Bonjour Emcy
Cela dépend de ce que tu appelles une variable tableau et de la façon dont elle a été définie.
Avec ce code :
Private Sub Tableaux() Dim Mat1, Mat2(0), Mat3() Mat1 = Array() MsgBox UBound(Mat1) MsgBox UBound(Mat2) MsgBox UBound(Mat3) End Sub
Mat1, sans parenthèse est un Variant auquel on affecte un tableau vide
Mat2, avec parenthèses est défini directement comme un tableau de Variant à une dimension.
Mat3, avec parenthèses est défini directement comme un tableau de Variant non dimensionné.
UBound(Mat1) est égal à -1, tandis que UBound(Mat2) est égal à 0 (indice maximal), tandis que UBound(Mat3) déclenche une erreur.
bonjour,
existe t-il un moyen de voir si une variable tableau (vba) est vide sans utiliser les OnError ?
-- Cordialement,
Michel Gaboly www.gaboly.com
Daniel
Bonjour. Si tu nous donnais un échantillon de ton code ? Cordialement. Daniel "Emcy" a écrit dans le message de news: et97VO8$
mon cas est pour Mat3 : y a t-il un moyen de ne pas avoir à utliser On Error ?
"Michel Gaboly" a écrit dans le message de news: O%23i470v$
Bonjour Emcy
Cela dépend de ce que tu appelles une variable tableau et de la façon dont elle a été définie.
Avec ce code :
Private Sub Tableaux() Dim Mat1, Mat2(0), Mat3() Mat1 = Array() MsgBox UBound(Mat1) MsgBox UBound(Mat2) MsgBox UBound(Mat3) End Sub
Mat1, sans parenthèse est un Variant auquel on affecte un tableau vide
Mat2, avec parenthèses est défini directement comme un tableau de Variant à une dimension.
Mat3, avec parenthèses est défini directement comme un tableau de Variant non dimensionné.
UBound(Mat1) est égal à -1, tandis que UBound(Mat2) est égal à 0 (indice maximal), tandis que UBound(Mat3) déclenche une erreur.
bonjour,
existe t-il un moyen de voir si une variable tableau (vba) est vide sans utiliser les OnError ?
-- Cordialement,
Michel Gaboly www.gaboly.com
Bonjour.
Si tu nous donnais un échantillon de ton code ?
Cordialement.
Daniel
"Emcy" <toto@bla.com> a écrit dans le message de news:
et97VO8$FHA.1676@TK2MSFTNGP09.phx.gbl...
mon cas est pour Mat3 : y a t-il un moyen de ne pas avoir à utliser On
Error ?
"Michel Gaboly" <michel.gaboly@wanadoo.fr> a écrit dans le message de
news: O%23i470v$FHA.2520@TK2MSFTNGP15.phx.gbl...
Bonjour Emcy
Cela dépend de ce que tu appelles une variable tableau et de la façon
dont elle a été définie.
Avec ce code :
Private Sub Tableaux()
Dim Mat1, Mat2(0), Mat3()
Mat1 = Array()
MsgBox UBound(Mat1)
MsgBox UBound(Mat2)
MsgBox UBound(Mat3)
End Sub
Mat1, sans parenthèse est un Variant auquel on affecte un tableau vide
Mat2, avec parenthèses est défini directement comme un tableau de Variant
à une dimension.
Mat3, avec parenthèses est défini directement comme un tableau de Variant
non dimensionné.
UBound(Mat1) est égal à -1, tandis que UBound(Mat2) est égal à 0 (indice
maximal), tandis que UBound(Mat3) déclenche une erreur.
bonjour,
existe t-il un moyen de voir si une variable tableau (vba) est vide sans
utiliser les OnError ?
Il suffit de declarer correctement les variables en ne declarant JAMAIS un tableau non dimensionné ;-)))
Utiliser systematiquement
Dim Mat(0)
ou
Dim Mat(0, 0) Dim Mat(0, 0, 0) ...
et jamais
Dim Mat()
Tu utilises ensuite Redim avant d'alimenter ton tableau
mon cas est pour Mat3 : y a t-il un moyen de ne pas avoir à utliser O n Error ?
"Michel Gaboly" a écrit dans le message de news: O%23i470v$
Bonjour Emcy
Cela dépend de ce que tu appelles une variable tableau et de la faç on dont elle a été définie.
Avec ce code :
Private Sub Tableaux() Dim Mat1, Mat2(0), Mat3() Mat1 = Array() MsgBox UBound(Mat1) MsgBox UBound(Mat2) MsgBox UBound(Mat3) End Sub
Mat1, sans parenthèse est un Variant auquel on affecte un tableau vid e
Mat2, avec parenthèses est défini directement comme un tableau de V ariant à une dimension.
Mat3, avec parenthèses est défini directement comme un tableau de V ariant non dimensionné.
UBound(Mat1) est égal à -1, tandis que UBound(Mat2) est égal à 0 (indice maximal), tandis que UBound(Mat3) déclenche une erreur.
bonjour,
existe t-il un moyen de voir si une variable tableau (vba) est vide sa ns utiliser les OnError ?
-- Cordialement,
Michel Gaboly www.gaboly.com
-- Cordialement,
Michel Gaboly www.gaboly.com
Emcy
malheuresement, je ne peux garantir que le tableau soit non vide.
j'ai fait une fonction qui revoie un tableau constitué des éléments d'un RecordSet (BDD Access) => donc je ne peux pas avoir comme certitude que mon tableau ne sera pas vide
Sub Main() Me.ListBox1.List = FonctionRecupere(MaColonne, Filtre) End Sub
Function FonctionRecupere(MaColonne As String, Filtre As String) as Variant Dim MonTableau() As String ..... ..... 'remplissage de MonTableau (en utilisant Redim pour fixer la taille) ..... FonctionRecupere = MonTableau End Function
=> si la fonction renvoie un tableau vide alors j'ai un message d'erreur lorsque je remplis la ListBox : je recherche un moyen pour qu'il n'y ai pas d'erreur s'il n'y a aucuns element à rentrer dans la ListBox (sans avoir à toucher le code de la sub Main)
"Emcy" a écrit dans le message de news: et97VO8$
mon cas est pour Mat3 : y a t-il un moyen de ne pas avoir à utliser On Error ?
"Michel Gaboly" a écrit dans le message de news: O%23i470v$
Bonjour Emcy
Cela dépend de ce que tu appelles une variable tableau et de la façon dont elle a été définie.
Avec ce code :
Private Sub Tableaux() Dim Mat1, Mat2(0), Mat3() Mat1 = Array() MsgBox UBound(Mat1) MsgBox UBound(Mat2) MsgBox UBound(Mat3) End Sub
Mat1, sans parenthèse est un Variant auquel on affecte un tableau vide
Mat2, avec parenthèses est défini directement comme un tableau de Variant à une dimension.
Mat3, avec parenthèses est défini directement comme un tableau de Variant non dimensionné.
UBound(Mat1) est égal à -1, tandis que UBound(Mat2) est égal à 0 (indice maximal), tandis que UBound(Mat3) déclenche une erreur.
bonjour,
existe t-il un moyen de voir si une variable tableau (vba) est vide sans utiliser les OnError ?
-- Cordialement,
Michel Gaboly www.gaboly.com
malheuresement, je ne peux garantir que le tableau soit non vide.
j'ai fait une fonction qui revoie un tableau constitué des éléments d'un
RecordSet (BDD Access) => donc je ne peux pas avoir comme certitude que mon
tableau ne sera pas vide
Sub Main()
Me.ListBox1.List = FonctionRecupere(MaColonne, Filtre)
End Sub
Function FonctionRecupere(MaColonne As String, Filtre As String) as Variant
Dim MonTableau() As String
.....
..... 'remplissage de MonTableau (en utilisant Redim pour fixer la
taille)
.....
FonctionRecupere = MonTableau
End Function
=> si la fonction renvoie un tableau vide alors j'ai un message d'erreur
lorsque je remplis la ListBox : je recherche un moyen pour qu'il n'y ai pas
d'erreur s'il n'y a aucuns element à rentrer dans la ListBox (sans avoir à
toucher le code de la sub Main)
"Emcy" <toto@bla.com> a écrit dans le message de news:
et97VO8$FHA.1676@TK2MSFTNGP09.phx.gbl...
mon cas est pour Mat3 : y a t-il un moyen de ne pas avoir à utliser On
Error ?
"Michel Gaboly" <michel.gaboly@wanadoo.fr> a écrit dans le message de
news: O%23i470v$FHA.2520@TK2MSFTNGP15.phx.gbl...
Bonjour Emcy
Cela dépend de ce que tu appelles une variable tableau et de la façon
dont elle a été définie.
Avec ce code :
Private Sub Tableaux()
Dim Mat1, Mat2(0), Mat3()
Mat1 = Array()
MsgBox UBound(Mat1)
MsgBox UBound(Mat2)
MsgBox UBound(Mat3)
End Sub
Mat1, sans parenthèse est un Variant auquel on affecte un tableau vide
Mat2, avec parenthèses est défini directement comme un tableau de Variant
à une dimension.
Mat3, avec parenthèses est défini directement comme un tableau de Variant
non dimensionné.
UBound(Mat1) est égal à -1, tandis que UBound(Mat2) est égal à 0 (indice
maximal), tandis que UBound(Mat3) déclenche une erreur.
bonjour,
existe t-il un moyen de voir si une variable tableau (vba) est vide sans
utiliser les OnError ?
malheuresement, je ne peux garantir que le tableau soit non vide.
j'ai fait une fonction qui revoie un tableau constitué des éléments d'un RecordSet (BDD Access) => donc je ne peux pas avoir comme certitude que mon tableau ne sera pas vide
Sub Main() Me.ListBox1.List = FonctionRecupere(MaColonne, Filtre) End Sub
Function FonctionRecupere(MaColonne As String, Filtre As String) as Variant Dim MonTableau() As String ..... ..... 'remplissage de MonTableau (en utilisant Redim pour fixer la taille) ..... FonctionRecupere = MonTableau End Function
=> si la fonction renvoie un tableau vide alors j'ai un message d'erreur lorsque je remplis la ListBox : je recherche un moyen pour qu'il n'y ai pas d'erreur s'il n'y a aucuns element à rentrer dans la ListBox (sans avoir à toucher le code de la sub Main)
"Emcy" a écrit dans le message de news: et97VO8$
mon cas est pour Mat3 : y a t-il un moyen de ne pas avoir à utliser On Error ?
"Michel Gaboly" a écrit dans le message de news: O%23i470v$
Bonjour Emcy
Cela dépend de ce que tu appelles une variable tableau et de la façon dont elle a été définie.
Avec ce code :
Private Sub Tableaux() Dim Mat1, Mat2(0), Mat3() Mat1 = Array() MsgBox UBound(Mat1) MsgBox UBound(Mat2) MsgBox UBound(Mat3) End Sub
Mat1, sans parenthèse est un Variant auquel on affecte un tableau vide
Mat2, avec parenthèses est défini directement comme un tableau de Variant à une dimension.
Mat3, avec parenthèses est défini directement comme un tableau de Variant non dimensionné.
UBound(Mat1) est égal à -1, tandis que UBound(Mat2) est égal à 0 (indice maximal), tandis que UBound(Mat3) déclenche une erreur.
bonjour,
existe t-il un moyen de voir si une variable tableau (vba) est vide sans utiliser les OnError ?
-- Cordialement,
Michel Gaboly www.gaboly.com
Daniel
Est-ce que tu ne peux pas mettre un compteur d'enregistrements au moment du remplissage ? Daniel "Emcy" a écrit dans le message de news: eqAETy9$
malheuresement, je ne peux garantir que le tableau soit non vide.
j'ai fait une fonction qui revoie un tableau constitué des éléments d'un RecordSet (BDD Access) => donc je ne peux pas avoir comme certitude que mon tableau ne sera pas vide
Sub Main() Me.ListBox1.List = FonctionRecupere(MaColonne, Filtre) End Sub
Function FonctionRecupere(MaColonne As String, Filtre As String) as Variant Dim MonTableau() As String ..... ..... 'remplissage de MonTableau (en utilisant Redim pour fixer la taille) ..... FonctionRecupere = MonTableau End Function
=> si la fonction renvoie un tableau vide alors j'ai un message d'erreur lorsque je remplis la ListBox : je recherche un moyen pour qu'il n'y ai pas d'erreur s'il n'y a aucuns element à rentrer dans la ListBox (sans avoir à toucher le code de la sub Main)
"Emcy" a écrit dans le message de news: et97VO8$
mon cas est pour Mat3 : y a t-il un moyen de ne pas avoir à utliser On Error ?
"Michel Gaboly" a écrit dans le message de news: O%23i470v$
Bonjour Emcy
Cela dépend de ce que tu appelles une variable tableau et de la façon dont elle a été définie.
Avec ce code :
Private Sub Tableaux() Dim Mat1, Mat2(0), Mat3() Mat1 = Array() MsgBox UBound(Mat1) MsgBox UBound(Mat2) MsgBox UBound(Mat3) End Sub
Mat1, sans parenthèse est un Variant auquel on affecte un tableau vide
Mat2, avec parenthèses est défini directement comme un tableau de Variant à une dimension.
Mat3, avec parenthèses est défini directement comme un tableau de Variant non dimensionné.
UBound(Mat1) est égal à -1, tandis que UBound(Mat2) est égal à 0 (indice maximal), tandis que UBound(Mat3) déclenche une erreur.
bonjour,
existe t-il un moyen de voir si une variable tableau (vba) est vide sans utiliser les OnError ?
-- Cordialement,
Michel Gaboly www.gaboly.com
Est-ce que tu ne peux pas mettre un compteur d'enregistrements au moment du
remplissage ?
Daniel
"Emcy" <toto@bla.com> a écrit dans le message de news:
eqAETy9$FHA.504@TK2MSFTNGP12.phx.gbl...
malheuresement, je ne peux garantir que le tableau soit non vide.
j'ai fait une fonction qui revoie un tableau constitué des éléments d'un
RecordSet (BDD Access) => donc je ne peux pas avoir comme certitude que
mon tableau ne sera pas vide
Sub Main()
Me.ListBox1.List = FonctionRecupere(MaColonne, Filtre)
End Sub
Function FonctionRecupere(MaColonne As String, Filtre As String) as
Variant
Dim MonTableau() As String
.....
..... 'remplissage de MonTableau (en utilisant Redim pour fixer la
taille)
.....
FonctionRecupere = MonTableau
End Function
=> si la fonction renvoie un tableau vide alors j'ai un message d'erreur
lorsque je remplis la ListBox : je recherche un moyen pour qu'il n'y ai
pas d'erreur s'il n'y a aucuns element à rentrer dans la ListBox (sans
avoir à toucher le code de la sub Main)
"Emcy" <toto@bla.com> a écrit dans le message de news:
et97VO8$FHA.1676@TK2MSFTNGP09.phx.gbl...
mon cas est pour Mat3 : y a t-il un moyen de ne pas avoir à utliser On
Error ?
"Michel Gaboly" <michel.gaboly@wanadoo.fr> a écrit dans le message de
news: O%23i470v$FHA.2520@TK2MSFTNGP15.phx.gbl...
Bonjour Emcy
Cela dépend de ce que tu appelles une variable tableau et de la façon
dont elle a été définie.
Avec ce code :
Private Sub Tableaux()
Dim Mat1, Mat2(0), Mat3()
Mat1 = Array()
MsgBox UBound(Mat1)
MsgBox UBound(Mat2)
MsgBox UBound(Mat3)
End Sub
Mat1, sans parenthèse est un Variant auquel on affecte un tableau vide
Mat2, avec parenthèses est défini directement comme un tableau de
Variant à une dimension.
Mat3, avec parenthèses est défini directement comme un tableau de
Variant non dimensionné.
UBound(Mat1) est égal à -1, tandis que UBound(Mat2) est égal à 0 (indice
maximal), tandis que UBound(Mat3) déclenche une erreur.
bonjour,
existe t-il un moyen de voir si une variable tableau (vba) est vide
sans utiliser les OnError ?
Est-ce que tu ne peux pas mettre un compteur d'enregistrements au moment du remplissage ? Daniel "Emcy" a écrit dans le message de news: eqAETy9$
malheuresement, je ne peux garantir que le tableau soit non vide.
j'ai fait une fonction qui revoie un tableau constitué des éléments d'un RecordSet (BDD Access) => donc je ne peux pas avoir comme certitude que mon tableau ne sera pas vide
Sub Main() Me.ListBox1.List = FonctionRecupere(MaColonne, Filtre) End Sub
Function FonctionRecupere(MaColonne As String, Filtre As String) as Variant Dim MonTableau() As String ..... ..... 'remplissage de MonTableau (en utilisant Redim pour fixer la taille) ..... FonctionRecupere = MonTableau End Function
=> si la fonction renvoie un tableau vide alors j'ai un message d'erreur lorsque je remplis la ListBox : je recherche un moyen pour qu'il n'y ai pas d'erreur s'il n'y a aucuns element à rentrer dans la ListBox (sans avoir à toucher le code de la sub Main)
"Emcy" a écrit dans le message de news: et97VO8$
mon cas est pour Mat3 : y a t-il un moyen de ne pas avoir à utliser On Error ?
"Michel Gaboly" a écrit dans le message de news: O%23i470v$
Bonjour Emcy
Cela dépend de ce que tu appelles une variable tableau et de la façon dont elle a été définie.
Avec ce code :
Private Sub Tableaux() Dim Mat1, Mat2(0), Mat3() Mat1 = Array() MsgBox UBound(Mat1) MsgBox UBound(Mat2) MsgBox UBound(Mat3) End Sub
Mat1, sans parenthèse est un Variant auquel on affecte un tableau vide
Mat2, avec parenthèses est défini directement comme un tableau de Variant à une dimension.
Mat3, avec parenthèses est défini directement comme un tableau de Variant non dimensionné.
UBound(Mat1) est égal à -1, tandis que UBound(Mat2) est égal à 0 (indice maximal), tandis que UBound(Mat3) déclenche une erreur.
bonjour,
existe t-il un moyen de voir si une variable tableau (vba) est vide sans utiliser les OnError ?