toki127
Messages postés241Date d'inscriptiondimanche 18 janvier 2009StatutMembreDernière intervention31 mai 2021
-
8 oct. 2008 à 22:33
cs_inforom
Messages postés36Date d'inscriptionmercredi 8 octobre 2008StatutMembreDernière intervention12 avril 2017
-
10 oct. 2008 à 08:59
Bonsoir,
il est bien possible d avoir des colonnes dans un tableau a plusieurs colonnes de tailles différentes, non?
comment faire un Ubound de la deuxieme colonne?
merci!
cs_inforom
Messages postés36Date d'inscriptionmercredi 8 octobre 2008StatutMembreDernière intervention12 avril 2017 10 oct. 2008 à 08:59
S'il s'agit de VBA...Je rajoute un petit grain de sel:
Non, dans un tableau, toutes les colonnes ont la même taille, si tu parles du nombre de cellules. Le 'Ubound' (la limite supérieure) est donc entièrement défini.
En général si tu as besoin de connaître la dimension d'un tableau, c'est que tu ne l 'as pas toi même dimensionné de façon explicite. Soit ton tableau est obtenu par une fonction style array, ou split, ou que tu l'as chargé par affectation d'une plage EXCEL, ou encore créé par le résultat d'une requête (RecordSet) par exemple...
' lecture d'une plage dans un tableau et récupération du nombre de colonnes
dim t as variant
dim nbc as integer
t=range("toto")
't est un tableau à deux dimensions de base 1
nbc=ubound(t,2) ... te donne le nombre de colonnes
ATTENTION! dans le cas de l'affectation d'un range:
- d'une part on démarre à 1: ubound donne le nombre de colonnes
- d'autre part il y a toutjours deux dimensions, même se le tableau ne comporte qu'une seule ligne ou qu'une seule colonne
Dans les autres cas, à priori, un tableau créé est en base 0, et Ubound te donne le nombre d'éléments +1
Autre truc à savoir:
Si tu envisages de redimensionner toi-même ton tableau, de façon dynamique, en conservant le contenu, tu ne pourras changer qu'une seule dimension: la dernière...