Se connecter avec Microsoft
S'identifier ou créer un compte.
Bonjour,
Sélectionnez un autre compte.
Vous avez plusieurs comptes
Choisissez le compte avec lequel vous voulez vous connecter.

Résumé

Cet article contient des exemples de procédures Microsoft Visual Basic pour Applications que vous pouvez utiliser pour travailler avec plusieurs types de tableaux.

Informations supplémentaires

Microsoft fournit des exemples de programmation à titre d’illustration uniquement, sans garantie expresse ou implicite. Cela inclut, sans s’y limiter, les garanties implicites de qualité marchande ou 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 ingénieurs du support technique Microsoft peuvent vous aider à expliquer les fonctionnalités d’une procédure particulière, mais ils ne modifient pas ces exemples pour fournir des fonctionnalités supplémentaires ou construire des procédures pour répondre à vos besoins spécifiques. REMARQUE : Dans les procédures Visual Basic pour Applications, les mots après l’apostrophe (') sont des commentaires.
 

Pour remplir un tableau, puis le copier dans une feuille de calcul

  1. Ouvrez un nouveau classeur et insérez une feuille de module Visual Basic.

  2. Tapez le code suivant dans la feuille de module.

    Sub Sheet_Fill_Array()
       Dim myarray As Variant
       myarray = Array(1, 2, 3, 4, 5, 6, 7, 8, 9, 10)
       Range("a1:a10").Value = Application.Transpose(myarray)
    End Sub
    
  3. Sélectionnez Feuille1.

  4. Dans le menu Outils, pointez sur Macro, puis cliquez sur Macros.

  5. Dans la boîte de dialogue Macro, cliquez sur Sheet_Fill_Array, puis sur Exécuter.

Pour prendre des valeurs d’une feuille de calcul et remplir le tableau

  1. Tapez des valeurs sur sheet1 dans les cellules A1:A10.

  2. Dans une feuille de module Visual Basic, tapez le code suivant :

    Sub from_sheet_make_array()
       Dim thisarray As Variant
       thisarray = Range("a1:a10").Value
    
       counter = 1                'looping structure to look at array
       While counter <= UBound(thisarray)
          MsgBox thisarray(counter, 1)
          counter = counter + 1
       Wend
    End Sub
    
  3. Sélectionnez Feuille1.

  4. Dans le menu Outils, pointez sur Macro, puis cliquez sur Macros.

  5. Dans la boîte de dialogue Macro, cliquez sur from_sheet_make_array, puis sur Exécuter.

Pour passer et recevoir un tableau

  1. Dans une feuille de module, tapez le code suivant :

    Sub pass_array()
       Dim thisarray As Variant
       thisarray = Selection.Value
       receive_array (thisarray)
    End Sub
    
    Sub receive_array(thisarray)
       counter = 1
       While counter <= UBound(thisarray)
          MsgBox thisarray(counter, 1)
          counter = counter + 1
       Wend
    End Sub
    
  2. Sélectionnez Feuille1 et mettez en surbrillance la plage A1:A10.

  3. Dans le menu Outils, pointez sur Macro, puis cliquez sur Macros.

  4. Dans la boîte de dialogue Macro, cliquez sur pass_array, puis sur Exécuter.

Pour comparer deux tableaux

  1. Créez deux plages nommées sur la feuille Sheet1. Nommez une plage1 et l’autre plage2.

    Par exemple, mettez en surbrillance la plage de cellules A1:A10 et nommez-la range1 ; mettez en surbrillance la plage de cellules B1:B10 et nommez-la range2.

  2. Tapez le code suivant dans la feuille de module.

    Sub compare_two_array()
       Dim thisarray As Variant
       Dim thatarray As Variant
    
       thisarray = Range("range1").Value
       thatarray = Range("range2").Value
       counter = 1
       While counter <= UBound(thisarray)
          x = thisarray(counter, 1)
          y = thatarray(counter, 1)
          If x = y Then
             MsgBox "yes"
          Else MsgBox "no"
          End If
          counter = counter + 1
       Wend
    End Sub
    
  3. Sélectionnez Feuille 2.

  4. Dans le menu Outils, pointez sur Macro, puis cliquez sur Macro.

  5. Dans la boîte de dialogue Macro, cliquez sur compare_two_array, puis sur Exécuter.

    Vous verrez une boîte de message pour chaque comparaison.

Pour remplir un tableau dynamique

  1. Dans une feuille de module, tapez le code suivant :

    Sub fill_array()
    
       Dim thisarray As Variant
       number_of_elements = 3     'number of elements in the array
    
       'must redim below to set size
       ReDim thisarray(1 To number_of_elements) As Integer
       'resizes this size of the array
       counter = 1
       fillmeup = 7
       For counter = 1 To number_of_elements
          thisarray(counter) = fillmeup
       Next counter
    
       counter = 1         'this loop shows what was filled in
       While counter <= UBound(thisarray)
          MsgBox thisarray(counter)
          counter = counter + 1
       Wend
    
    End Sub
    
  2. Dans le menu Outils, pointez sur Macro, puis cliquez sur Macros.

  3. Dans la boîte de dialogue Macro, cliquez sur fill_array, puis sur Exécuter.

REMARQUE : La modification de la variable « number_of_elements » détermine la taille du tableau.
 

Besoin d’aide ?

Vous voulez plus d’options ?

Explorez les avantages de l’abonnement, parcourez les cours de formation, découvrez comment sécuriser votre appareil, etc.

Les communautés vous permettent de poser des questions et d'y répondre, de donner vos commentaires et de bénéficier de l'avis d'experts aux connaissances approfondies.

Ces informations vous ont-elles été utiles ?

Dans quelle mesure êtes-vous satisfait(e) de la qualité de la langue ?
Qu’est-ce qui a affecté votre expérience ?
En cliquant sur Envoyer, vos commentaires seront utilisés pour améliorer les produits et services de Microsoft. Votre administrateur informatique sera en mesure de collecter ces données. Déclaration de confidentialité.

Nous vous remercions de vos commentaires.

×