Numéro d'article: 152288 - Dernière mise à jour: mercredi 11 octobre 2006 - Version: 2.3

Détermination du nombre de dimensions dans une variable tableau

A noterCet article s'applique à un système d'exploitation différent de celui que vous utilisez. Le contenu de l'article qui ne vous concerne peut-être pas est désactivé.

Sommaire

Agrandir tout | Réduire tout

Résumé

Il n'y a aucune fonction intégrée pour renvoyer le nombre de dimensions dans une variable tableau dans Visual Basic pour applications. Pour ce faire, la méthode la plus simple consiste en une boucle dans les dimensions et en utilisant un gestionnaire d'erreurs pour renvoyer le nombre de dimensions.

Plus d'informations

Microsoft fournit des exemples de programmation à des fins d'illustration uniquement, sans garantie expresse ou implicite. Cela inclut, mais n'est pas limité à, les garanties implicites de qualité, d'adéquation à un usage particulier. Cet article suppose que vous êtes familiarisé avec le langage de programmation présenté et les outils utilisés pour créer et déboguer des procédures. Les techniciens du support technique Microsoft peuvent vous aider à comprendre la fonctionnalité d'une procédure particulière, mais ils ne modifieront pas ces exemples pour fournir des fonctionnalités supplémentaires ou créer des procédures répondant à vos besoins spécifiques. Pour déterminer le nombre de dimensions dans un Visual Basic pour applications tableau variable, la méthode la plus simple consiste à obtenir la routine pour tenter une tâche avec chaque dimension. Lorsqu'il essaie d'effectuer la tâche à une dimension qui n'existe pas, une erreur sera renvoyée. Un gestionnaire d'erreurs peut être utilisé pour retourner la dimension dans laquelle la tâche a été dernier réussie. Permet de tester une dimension est à l'aide de la fonction LBound. La fonction LBound prend deux arguments, la variable tableau et la dimension spécifique et retourne les limites inférieures de cette dimension. À l'aide de cette fonction sur une dimension qui n'existe pas de cette propriété renvoie une erreur. Associé à un gestionnaire d'erreurs, cela peut être utilisé pour déterminer le nombre de dimensions.

Exemple de procédure Visual Basic

Cette routine teste le tableau nommé Xarray en testant LBound de chaque dimension. À l'aide d'une boucle For...Next, la routine parcourt le nombre de dimensions du tableau possible, à 60000, jusqu'à ce qu'une erreur est générée. Puis le Gestionnaire d'erreurs prend l'étape de compteur Échec de la boucle, soustrait un (parce que celui de la précédente était le dernier sans erreur) et affiche le résultat dans une boîte de message.
   Sub NumberOfDimensions()

      'Dimensions Xarray as an array.
      Dim Xarray(1 to 10, 5 to 20, 256 to 300, 8, -5 to 0)

      'Sets up the error handler.
      On Error GoTo FinalDimension

      'Visual Basic for Applications arrays can have up to 60000
      'dimensions; this allows for that.
      For DimNum = 1 to 60000

         'It is necessary to do something with the LBound to force it
         'to generate an error.
         ErrorCheck = LBound(Xarray, DimNum)

      Next DimNum

      Exit Sub

      ' The error routine.
   FinalDimension:

      MsgBox "The array has " & DimNum - 1 & " dimensions"

   End Sub
				

Références

Pour plus d'informations sur l'obtention d'aide sur Visual Basic pour applications, consultez l'article suivant dans la base de connaissances Microsoft :
163435  (http://support.microsoft.com/kb/163435/EN-US/ ) VBA : Ressources de programmation pour Visual Basic pour applications

Les informations contenues dans cet article s'appliquent au(x) produit(s) suivant(s):
  • Microsoft Excel 97 Standard
  • Microsoft Excel 95 Standard
  • Microsoft Excel 5.0 Standard
  • Microsoft Excel 98 pour Macintosh
Mots-clés : 
kbmt kbdtacode kbhowto kbprogramming KB152288 KbMtfr
Traduction automatiqueTraduction automatique
IMPORTANT : Cet article est issu du système de traduction automatique mis au point par Microsoft (http://support.microsoft.com/gp/mtdetails). Un certain nombre d?articles obtenus par traduction automatique sont en effet mis à votre disposition en complément des articles traduits en langue française par des traducteurs professionnels. Cela vous permet d?avoir accès, dans votre propre langue, à l?ensemble des articles de la base de connaissances rédigés originellement en langue anglaise. Les articles traduits automatiquement ne sont pas toujours parfaits et peuvent comporter des erreurs de vocabulaire, de syntaxe ou de grammaire (probablement semblables aux erreurs que ferait une personne étrangère s?exprimant dans votre langue !). Néanmoins, mis à part ces imperfections, ces articles devraient suffire à vous orienter et à vous aider à résoudre votre problème. Microsoft s?efforce aussi continuellement de faire évoluer son système de traduction automatique.
La version anglaise de cet article est la suivante: 152288  (http://support.microsoft.com/kb/152288/en-us/ )
L'INFORMATION CONTENUE DANS CE DOCUMENT EST FOURNIE PAR MICROSOFT SANS GARANTIE D'AUCUNE SORTE, EXPLICITE OU IMPLICITE. L'UTILISATEUR ASSUME LE RISQUE DE L'UTILISATION DU CONTENU DE CE DOCUMENT. CE DOCUMENT NE PEUT ETRE REVENDU OU CEDE EN ECHANGE D'UN QUELCONQUE PROFIT.
Retired KB ArticleExclusion de responsabilité concernant les contenus obsolètes dans la Base de connaissances
Cet article concerne des produits pour lesquels Microsoft n'offre plus de support. Il est par conséquent fourni « en l'état » et ne sera plus mis à jour.