Fonction VBA UBound - Comment utiliser UBound dans Excel VBA?

Table des matières

UBOUND ou également connue sous le nom de Upper Bound, cette fonction en VBA est utilisée avec sa fonction opposée que LBOUND ou également connue sous le nom de fonction Lower Bound, l'utilisation de cette fonction consiste à définir la longueur d'un tableau dans un code et comme son nom l'indique UBOUND est utilisé pour définir la limite supérieure du tableau.

Fonction VBA UBOUND

Comment dire la longueur maximale du tableau dans Excel? Oui, nous pouvons voir et mettre à jour manuellement la longueur maximale du tableau, mais si vous le faites pendant tout ce temps, alors aujourd'hui est la fin car nous avons une fonction appelée UBOUND pour déterminer la longueur maximale du tableau. Suivez cet article pour avoir plus de connaissances sur la fonction UBOUND dans Excel VBA.

UBOUND signifie Upper Bound. Souvent, dans le codage, nous pouvons avoir besoin de trouver la longueur maximale du tableau. Par exemple, MyResult (24) signifie que le nom du tableau MyResult contient 25 valeurs car le tableau commence à zéro, pas à un. Donc, 24 signifie +1, soit un total de 25 valeurs.

Ici, la longueur maximale du tableau est 24. Au lieu de fournir manuellement la longueur du tableau, nous pouvons utiliser la fonction intégrée UBOUND pour obtenir la longueur maximale du tableau.

Le code est: UBOUND (MyResult), c'est-à-dire UBOUND (24)

La fonction Excel VBA UBOUND représente donc la limite supérieure de la taille du tableau.

Comment utiliser la fonction VBA UBound dans Excel?

La formule de VBA UBOUND est très simple car elle n'a que deux paramètres.

UBound (Arrayname (, Dimension))
  • Nom du tableau: il s'agit du nom du nom du tableau que nous avons défini. Par exemple, dans l'exemple ci-dessus, MyResult est le nom du tableau.
  • (Dimension): Si le tableau a plus d'une dimension, nous devons spécifier la dimension du tableau. Si vous l'ignorez, il traitera la première dimension par défaut.

La fonction Excel VBA UBOUND est très utile pour déterminer la longueur des boucles lors de l'exécution des boucles.

Exemples de fonction UBOUND dans Excel VBA

Vous trouverez ci-dessous les exemples pratiques de la fonction VBA UBound.

Exemple 1

Pour commencer la procédure, laissez-moi écrire le code simple. Suivez les étapes ci-dessous pour appliquer la fonction VBA UBOUND.

Étape 1: Démarrez la macro Excel et définissez le nom de la variable.

Code:

Sub Ubound_Example1 () Dim ArrayLength (0 à 4) As String

Étape 2: J'attribuerai des valeurs à ce nom de tableau.

Code:

Sub Ubound_Example1 () Dim ArrayLength (0 To 4) As String ArrayLength (0) = "Hi" ArrayLength (1) = "Friend" ArrayLength (2) = "Welcome" ArrayLength (3) = "to" ArrayLength (4) = Sous-marin de fin "Classe VBA"

Étape 3: Maintenant, en utilisant une boîte de message avec la fonction UBOUND, nous verrons la longueur maximale du tableau.

Code:

Sub Ubound_Example1 () Dim ArrayLength (0 To 4) As String ArrayLength (0) = "Hi" ArrayLength (1) = "Friend" ArrayLength (2) = "Welcome" ArrayLength (3) = "to" ArrayLength (4) = La longueur de la limite supérieure "Classe VBA" MsgBox "est:" & UBound (ArrayLength) End Sub

Étape 4: Exécutez ce code en appuyant sur la touche F5, ou vous pouvez également exécuter le code manuellement, comme indiqué dans la capture d'écran ci-dessous.

La boîte de message vous montrera le numéro de limite supérieure du tableau sera affiché dans la boîte de message.

Comme cela, en utilisant la fonction Excel VBA UBOUND, nous pouvons obtenir la longueur de la limite supérieure d'un tableau.

Exemple # 2 - Utilisation de la fonction Excel VBA UBOUND pour copier les données

Supposons que vous ayez une liste de données dans une feuille Excel comme celle ci-dessous.

Ces données vont être mises à jour quotidiennement et vous devez copier ces données dans la nouvelle feuille à chaque mise à jour. La mise à jour manuelle prendra un temps considérable sur votre lieu de travail, mais je vais vous montrer un code de macro simple pour automatiser cela.

Étape 1: Créez une macro et définissez la variable de tableau.

Code:

Sub Ubound_Example2 () Dim DataRange () As Variant End Sub

Étape 2: Activez maintenant la fiche technique en vous référant à son nom.

Code:

Sub Ubound_Example2 () Dim DataRange () As Variant Sheets ("Data Sheet"). Activer End Sub

Étape 3: Attribuez maintenant la plage de données à la variable définie en utilisant le code ci-dessous.

Code:

Sub Ubound_Example2 () Dim DataRange () As Variant Sheets ("Data Sheet"). Activez DataRange = Range ("A2", Range ("A1"). End (xlDown) .End (xlToRight)) End Sub

Step 4: Now add a new worksheet to the workbook.

Code:

Sub Ubound_Example2() Dim DataRange() As Variant Sheets("Data Sheet").Activate DataRange = Range("A2", Range("A1").End(xlDown).End(xlToRight)) Worksheets.Add End Sub

Step 5: Now add the data to the newly added sheet by using the Excel VBA UBOUND function in the form of the below code.

Code:

Sub Ubound_Example2() Dim DataRange() As Variant Sheets("Data Sheet").Activate DataRange = Range("A2", Range("A1").End(xlDown).End(xlToRight)) Worksheets.Add Range(ActiveCell, ActiveCell.Offset(UBound(DataRange, 1) - 1, UBound(DataRange, 2) - 1)) = DataRange End Sub

The above code will offset the cells by the maximum length returned by the UBOUND function, and this range will be equal to the value of the array name “DataRange.

Step 6: Now run this code. It will paste the value to the new sheet.

This code is a dynamic one because even when the data increases horizontally and vertically, it will automatically take the range. Now I will add some dummy lines to the data.

Now I will once again run this code. It will now add the newly added lines as well.

Code:

Sub Ubound_Example2 () Dim DataRange () As Variant Sheets ("Data Sheet"). Activer DataRange = Range ("A2", Range ("A1"). End (xlDown) .End (xlToRight)) Worksheets.Add Range (ActiveCell , ActiveCell.Offset (UBound (DataRange, 1) - 1, UBound (DataRange, 2) - 1)) = DataRange Erase DataRange End Sub

Choses dont il faut se rappeler

  • UBOUND renvoie la longueur maximale du tableau.
  • Le tableau commence à 0, pas à 1.
  • Si vous voulez la valeur la plus basse du tableau, vous devez utiliser VBA LBOUND.
  • Si le tableau a plus d'une dimension, vous devez également spécifier le numéro de dimension.

Articles intéressants...