Problème résolu ! ! Vous aviez raison - les dimensions sont différentes, la 2ème dimension a 10 éléments.
Il semble que si vous ne fournissez pas une rangée au ListBox, son. La rangée de liste est automatiquement dimensionnée à 9 (10 colonnes).
Je devine quand vous employez .AddItem, intérieurement il exécute une conserve de ReDim sur la première dimension du. Rangée de liste afin d'augmenter le compte de rangée.
Mais il commence et reste à 10 colonnes, que vous les employiez ou pas.
Ainsi la raison que j'obtenais un type erreur de disparité est parce que les colonnes 3 à 10 contenus annule - et WorksheetFunction.Index ne peut pas traiter annule.
Si vous recouvrez tout l'annule en peuplant chacune des dix colonnes (comme ceci), index travaille très bien.
Faible RowIndex comme nombre entier, ColIndex comme nombre entier
Pour RowIndex = 0 à 9
Format de Me.ListBox1.AddItem (RowIndex, « 00 ») et » - 00 "
Pour ColIndex = 0 à 9
Me.ListBox1.List (RowIndex, ColIndex) = format (RowIndex, « 00 ») et » - « et format (ColIndex, « 00 »)
Prochain ColIndex
Prochain RowIndex
Ainsi la solution est si vous voulez pouvoir employer l'index pour obtenir une rangée d'un ListBox, vous a besoin de suffisance et la range d'abord et l'assigne à la liste - c.-à-d. ne pas employer .AddItem pour peupler la liste. Alors cela fonctionne très bien.
Merci encore de vos commentaires.
Mike