En vba, je définis dans un module un tableau dynamique par :
Public monTableau() as string
Ensuite, un formulaire remplit ce tableau avec des dates, ou ne le
remplit pas, selon le choix de l'utilisateur.
Si des dates sont choisies, cela se fait à coup de redim preserve
monTableau(1)... (2) ...
Mais il se peut parfaitement qu'aucune date n'ai été choisie.
Dans le module lançant le formulaire, comment savoir, lorsque le
formulaire a rendu la main (Unload userForm), si mon tableau est vide
(pas eu de redim).
En effet, ubound(monTableau) me sort une erreur, isempty(montableau) me
sort false...
J'aimerais savoir aussi, par la même occasion, si plutôt que de déclarer
monTableau publique, je peux le passer en paramètre au formulaire.
Cela ferait plus "propre" je trouve.
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
michdenis
Bonjour CB,
Ceci s'applique seulement si le contenu des éléments de ton tableau est de type date ( ou numérique)
a = WorksheetFunction.CountA(Tblo) A = nombre de valeur "date" contenu dans tblo. CountA() = NbVal() de la feuille de calcul.
Évidemment, pour que cette ligne de code soit valide, il faut que ton tableau ait été défini par Redim Tblo() ou déclaré Tblo(5)....
Salutations!
"CB" a écrit dans le message de news: 432da0da$0$1739$ Bonjour,
En vba, je définis dans un module un tableau dynamique par : Public monTableau() as string
Ensuite, un formulaire remplit ce tableau avec des dates, ou ne le remplit pas, selon le choix de l'utilisateur. Si des dates sont choisies, cela se fait à coup de redim preserve monTableau(1)... (2) ...
Mais il se peut parfaitement qu'aucune date n'ai été choisie.
Dans le module lançant le formulaire, comment savoir, lorsque le formulaire a rendu la main (Unload userForm), si mon tableau est vide (pas eu de redim).
En effet, ubound(monTableau) me sort une erreur, isempty(montableau) me sort false...
J'aimerais savoir aussi, par la même occasion, si plutôt que de déclarer monTableau publique, je peux le passer en paramètre au formulaire. Cela ferait plus "propre" je trouve.
Merci de votre aide. Christophe.
Bonjour CB,
Ceci s'applique seulement si le contenu des éléments de ton tableau est de type date ( ou numérique)
a = WorksheetFunction.CountA(Tblo)
A = nombre de valeur "date" contenu dans tblo.
CountA() = NbVal() de la feuille de calcul.
Évidemment, pour que cette ligne de code soit valide, il faut que ton tableau ait été défini par Redim Tblo() ou déclaré Tblo(5)....
Salutations!
"CB" <XX@xx.org> a écrit dans le message de news: 432da0da$0$1739$8fcfb975@news.wanadoo.fr...
Bonjour,
En vba, je définis dans un module un tableau dynamique par :
Public monTableau() as string
Ensuite, un formulaire remplit ce tableau avec des dates, ou ne le
remplit pas, selon le choix de l'utilisateur.
Si des dates sont choisies, cela se fait à coup de redim preserve
monTableau(1)... (2) ...
Mais il se peut parfaitement qu'aucune date n'ai été choisie.
Dans le module lançant le formulaire, comment savoir, lorsque le
formulaire a rendu la main (Unload userForm), si mon tableau est vide
(pas eu de redim).
En effet, ubound(monTableau) me sort une erreur, isempty(montableau) me
sort false...
J'aimerais savoir aussi, par la même occasion, si plutôt que de déclarer
monTableau publique, je peux le passer en paramètre au formulaire.
Cela ferait plus "propre" je trouve.
Ceci s'applique seulement si le contenu des éléments de ton tableau est de type date ( ou numérique)
a = WorksheetFunction.CountA(Tblo) A = nombre de valeur "date" contenu dans tblo. CountA() = NbVal() de la feuille de calcul.
Évidemment, pour que cette ligne de code soit valide, il faut que ton tableau ait été défini par Redim Tblo() ou déclaré Tblo(5)....
Salutations!
"CB" a écrit dans le message de news: 432da0da$0$1739$ Bonjour,
En vba, je définis dans un module un tableau dynamique par : Public monTableau() as string
Ensuite, un formulaire remplit ce tableau avec des dates, ou ne le remplit pas, selon le choix de l'utilisateur. Si des dates sont choisies, cela se fait à coup de redim preserve monTableau(1)... (2) ...
Mais il se peut parfaitement qu'aucune date n'ai été choisie.
Dans le module lançant le formulaire, comment savoir, lorsque le formulaire a rendu la main (Unload userForm), si mon tableau est vide (pas eu de redim).
En effet, ubound(monTableau) me sort une erreur, isempty(montableau) me sort false...
J'aimerais savoir aussi, par la même occasion, si plutôt que de déclarer monTableau publique, je peux le passer en paramètre au formulaire. Cela ferait plus "propre" je trouve.
Merci de votre aide. Christophe.
Kamel
Bonsoir Christophe,
As tu essayer d'utiliser une collection à la place de ton tableau dynamique ? Je pense que cela serait plus simple à utiliser que de faire des ReDim à chaque fois.
Kamel
"CB" a écrit dans le message de news: 432da0da$0$1739$
Bonjour,
En vba, je définis dans un module un tableau dynamique par : Public monTableau() as string
Ensuite, un formulaire remplit ce tableau avec des dates, ou ne le remplit pas, selon le choix de l'utilisateur. Si des dates sont choisies, cela se fait à coup de redim preserve monTableau(1)... (2) ...
Mais il se peut parfaitement qu'aucune date n'ai été choisie.
Dans le module lançant le formulaire, comment savoir, lorsque le formulaire a rendu la main (Unload userForm), si mon tableau est vide (pas eu de redim).
En effet, ubound(monTableau) me sort une erreur, isempty(montableau) me sort false...
J'aimerais savoir aussi, par la même occasion, si plutôt que de déclarer monTableau publique, je peux le passer en paramètre au formulaire. Cela ferait plus "propre" je trouve.
Merci de votre aide. Christophe.
Bonsoir Christophe,
As tu essayer d'utiliser une collection à la place de ton tableau dynamique
?
Je pense que cela serait plus simple à utiliser que de faire des ReDim à
chaque fois.
Kamel
"CB" <XX@xx.org> a écrit dans le message de news:
432da0da$0$1739$8fcfb975@news.wanadoo.fr...
Bonjour,
En vba, je définis dans un module un tableau dynamique par :
Public monTableau() as string
Ensuite, un formulaire remplit ce tableau avec des dates, ou ne le
remplit pas, selon le choix de l'utilisateur.
Si des dates sont choisies, cela se fait à coup de redim preserve
monTableau(1)... (2) ...
Mais il se peut parfaitement qu'aucune date n'ai été choisie.
Dans le module lançant le formulaire, comment savoir, lorsque le
formulaire a rendu la main (Unload userForm), si mon tableau est vide (pas
eu de redim).
En effet, ubound(monTableau) me sort une erreur, isempty(montableau) me
sort false...
J'aimerais savoir aussi, par la même occasion, si plutôt que de déclarer
monTableau publique, je peux le passer en paramètre au formulaire. Cela
ferait plus "propre" je trouve.
As tu essayer d'utiliser une collection à la place de ton tableau dynamique ? Je pense que cela serait plus simple à utiliser que de faire des ReDim à chaque fois.
Kamel
"CB" a écrit dans le message de news: 432da0da$0$1739$
Bonjour,
En vba, je définis dans un module un tableau dynamique par : Public monTableau() as string
Ensuite, un formulaire remplit ce tableau avec des dates, ou ne le remplit pas, selon le choix de l'utilisateur. Si des dates sont choisies, cela se fait à coup de redim preserve monTableau(1)... (2) ...
Mais il se peut parfaitement qu'aucune date n'ai été choisie.
Dans le module lançant le formulaire, comment savoir, lorsque le formulaire a rendu la main (Unload userForm), si mon tableau est vide (pas eu de redim).
En effet, ubound(monTableau) me sort une erreur, isempty(montableau) me sort false...
J'aimerais savoir aussi, par la même occasion, si plutôt que de déclarer monTableau publique, je peux le passer en paramètre au formulaire. Cela ferait plus "propre" je trouve.
Merci de votre aide. Christophe.
docm
Bonjour.
Il faut gérer l'erreur générée par Ubound si le tableau est vide:
On Error Resume Next a = UBound(monTableau) If Err <> 0 Then MsgBox "Aucune entrée effectué" Else MsgBox a & " entrée(s)" End If
"CB" a écrit dans le message news: 432da0da$0$1739$
Bonjour,
En vba, je définis dans un module un tableau dynamique par : Public monTableau() as string
Ensuite, un formulaire remplit ce tableau avec des dates, ou ne le remplit pas, selon le choix de l'utilisateur. Si des dates sont choisies, cela se fait à coup de redim preserve monTableau(1)... (2) ...
Mais il se peut parfaitement qu'aucune date n'ai été choisie.
Dans le module lançant le formulaire, comment savoir, lorsque le formulaire a rendu la main (Unload userForm), si mon tableau est vide (pas eu de redim).
En effet, ubound(monTableau) me sort une erreur, isempty(montableau) me sort false...
J'aimerais savoir aussi, par la même occasion, si plutôt que de déclarer monTableau publique, je peux le passer en paramètre au formulaire. Cela ferait plus "propre" je trouve.
Merci de votre aide. Christophe.
Bonjour.
Il faut gérer l'erreur générée par Ubound si le tableau est vide:
On Error Resume Next
a = UBound(monTableau)
If Err <> 0 Then
MsgBox "Aucune entrée effectué"
Else
MsgBox a & " entrée(s)"
End If
"CB" <XX@xx.org> a écrit dans le message news:
432da0da$0$1739$8fcfb975@news.wanadoo.fr...
Bonjour,
En vba, je définis dans un module un tableau dynamique par :
Public monTableau() as string
Ensuite, un formulaire remplit ce tableau avec des dates, ou ne le
remplit pas, selon le choix de l'utilisateur.
Si des dates sont choisies, cela se fait à coup de redim preserve
monTableau(1)... (2) ...
Mais il se peut parfaitement qu'aucune date n'ai été choisie.
Dans le module lançant le formulaire, comment savoir, lorsque le
formulaire a rendu la main (Unload userForm), si mon tableau est vide
(pas eu de redim).
En effet, ubound(monTableau) me sort une erreur, isempty(montableau) me
sort false...
J'aimerais savoir aussi, par la même occasion, si plutôt que de déclarer
monTableau publique, je peux le passer en paramètre au formulaire.
Cela ferait plus "propre" je trouve.
Il faut gérer l'erreur générée par Ubound si le tableau est vide:
On Error Resume Next a = UBound(monTableau) If Err <> 0 Then MsgBox "Aucune entrée effectué" Else MsgBox a & " entrée(s)" End If
"CB" a écrit dans le message news: 432da0da$0$1739$
Bonjour,
En vba, je définis dans un module un tableau dynamique par : Public monTableau() as string
Ensuite, un formulaire remplit ce tableau avec des dates, ou ne le remplit pas, selon le choix de l'utilisateur. Si des dates sont choisies, cela se fait à coup de redim preserve monTableau(1)... (2) ...
Mais il se peut parfaitement qu'aucune date n'ai été choisie.
Dans le module lançant le formulaire, comment savoir, lorsque le formulaire a rendu la main (Unload userForm), si mon tableau est vide (pas eu de redim).
En effet, ubound(monTableau) me sort une erreur, isempty(montableau) me sort false...
J'aimerais savoir aussi, par la même occasion, si plutôt que de déclarer monTableau publique, je peux le passer en paramètre au formulaire. Cela ferait plus "propre" je trouve.
Merci de votre aide. Christophe.
CB
As tu essayer d'utiliser une collection à la place de ton tableau dynamique ? Je pense que cela serait plus simple à utiliser que de faire des ReDim à chaque fois.
Kamel
Effectivement, c'est la solution. D'autant qu'au maxi je n'ai que 6
dates possible. Sur une collection vide, .count renvoie 0, et pas d'erreur, c'est parfait.
Merci Kamel et michdenis.
J'aimerais savoir aussi, par la même occasion, si plutôt que de déclarer monTableau publique, je peux le passer en paramètre au formulaire. Cela ferait plus "propre" je trouve.
Et, heu, ça, c'est possible (même si la collection déclarée Public au projet marche très bien) ?
Christophe.
As tu essayer d'utiliser une collection à la place de ton tableau dynamique
?
Je pense que cela serait plus simple à utiliser que de faire des ReDim à
chaque fois.
Kamel
Effectivement, c'est la solution. D'autant qu'au maxi je n'ai que 6
dates possible.
Sur une collection vide, .count renvoie 0, et pas d'erreur, c'est parfait.
Merci Kamel et michdenis.
J'aimerais savoir aussi, par la même occasion, si plutôt que de déclarer
monTableau publique, je peux le passer en paramètre au formulaire. Cela
ferait plus "propre" je trouve.
Et, heu, ça, c'est possible (même si la collection déclarée Public au
projet marche très bien) ?
As tu essayer d'utiliser une collection à la place de ton tableau dynamique ? Je pense que cela serait plus simple à utiliser que de faire des ReDim à chaque fois.
Kamel
Effectivement, c'est la solution. D'autant qu'au maxi je n'ai que 6
dates possible. Sur une collection vide, .count renvoie 0, et pas d'erreur, c'est parfait.
Merci Kamel et michdenis.
J'aimerais savoir aussi, par la même occasion, si plutôt que de déclarer monTableau publique, je peux le passer en paramètre au formulaire. Cela ferait plus "propre" je trouve.
Et, heu, ça, c'est possible (même si la collection déclarée Public au projet marche très bien) ?
Christophe.
CB
docm wrote:
Bonjour.
Il faut gérer l'erreur générée par Ubound si le tableau est vide:
On Error Resume Next a = UBound(monTableau) If Err <> 0 Then MsgBox "Aucune entrée effectué" Else MsgBox a & " entrée(s)" End If
Cela marche aussi.
Merci.
docm wrote:
Bonjour.
Il faut gérer l'erreur générée par Ubound si le tableau est vide:
On Error Resume Next
a = UBound(monTableau)
If Err <> 0 Then
MsgBox "Aucune entrée effectué"
Else
MsgBox a & " entrée(s)"
End If