VBA XLUP - Comment utiliser VBA XLUP dans Excel? (avec exemples)

Table des matières

Excel VBA XLUP

Une chose que vous devez garder à l'esprit lors de l'écriture du code VBA est ce que vous faites avec la feuille de calcul standard, et vous pouvez également répliquer la même chose dans VBA. Un de ces mots-clés dans le codage VBA est «XLUP» dans cet article. Nous allons vous montrer ce qu'est ce mot-clé dans le codage VBA et comment l'utiliser dans le codage.

Comment utiliser VBA XLUP dans le codage?

Voici les exemples d'Excel VBA XLUP.

Exemple # 1 - Déplacer les cellules vers la position supprimée des cellules

Par exemple, regardez le scénario des données ci-dessous, où vous devez supprimer ces données de cellules colorées et plus les données des lignes ci-dessous jusqu'aux données ci-dessus.

Une façon de supprimer cela dans la feuille de calcul consiste à sélectionner les cellules dans lesquelles nous pouvons simplement supprimer la ligne entière elle-même. Mais ici, les situations sont un peu délicates car j'ai des cellules colorées dans le tableau 1 lorsque nous supprimons la ligne entière, même les lignes du tableau 2 sont également supprimées, mais nous ne voulons pas que cela se produise; au lieu de cela, nous devons uniquement supprimer les lignes colorées et les cellules inférieures doivent remonter la position des cellules supprimées.

Tout d'abord, sélectionnez les cellules colorées et appuyez sur Ctrl + Symbole moins (-) pour ouvrir l'option «Supprimer».

Touche de raccourci pour ouvrir l'option «Supprimer»

Dans la fenêtre des options «supprimer», nous avons quatre options. Nous pouvons choisir l'action selon notre condition. Puisque nous devons déplacer nos cellules vers le haut pour la position des cellules supprimées, choisissez "Maj cellule vers le haut".

Nous aurons les lignes du tableau 2 inchangées.

Cette action dans VBA nécessite l'utilisation de la propriété «XLUP» pour effectuer un ensemble d'actions similaire dans VBA. Maintenant, venez dans la fenêtre de l'éditeur VBA et démarrez le nom de votre macro.

Code:

Sub XLUP_Example () End Sub

Tout d'abord, fournissez la plage de cellules à inclure dans cette opération. Dans cette action, les premières cellules à supprimer et à remonter sont les cellules «A5: B5».

Code:

Sub XLUP_Example () Range ("A5: B5") End Sub

Pour cette plage de cellules, sélectionnez la méthode «Supprimer».

Code:

Sub XLUP_Example () Range ("A5: B5"). Delete End Sub

Comme vous pouvez le voir pour la méthode «Delete», nous avons un argument optionnel comme (Shift). Pour cet argument, nous devons entrer l'argument en tant que «XLUP».

Code:

Sub XLUP_Example () Range ("A5: B5"). Delete shift: = xlUp End Sub


Vous pouvez maintenant exécuter ce code manuellement ou via la touche de raccourci Excel F5 pour voir le résultat.

Comme vous pouvez le voir dans le tableau 1, nous avons la ligne numéro 6 déplacée jusqu'à la 5ème ligne, et d'autre part la table, 2 ligne (colorée) est inchangée, donc en utilisant l'option «VBA XLUP», nous pouvons faire cette opération .

Exemple # 2 - Trouver la dernière ligne utilisée en utilisant XLUP

Imaginez une situation où vous êtes dans la cellule A20 (regardez l'image ci-dessous), et votre dernière cellule utilisée est A14.

Maintenant, si vous voulez choisir la dernière cellule utilisée (A14), comment allez-vous faire en utilisant une touche de raccourci ???

Nous utiliserions Ctrl + Flèche vers le haut pour passer à la dernière cellule utilisée à partir de la position actuelle.

Touche de raccourci pour passer à la dernière cellule utilisée

Ainsi, à partir de la cellule actuelle, Ctrl + Flèche haut a sélectionné la dernière cellule utilisée. De même, dans le codage VBA, nous utilisons END (XLUP) pour effectuer la même chose.

Revenez maintenant à la fenêtre de codage VBA.

In this window, we will perform the task of finding the last used row in the worksheet. Create a new subprocedure in the VBA window.

Code:

Sub XLUP_Example1() End Sub

To store the last used row number. define the variable as the VBA LONG data type.

Code:

Sub XLUP_Example1() Dim Last_Row_Number As Long End Sub


Now for this variable, we will assign the last used row number.

Code:

Sub XLUP_Example1() Dim Last_Row_Number As Long Last_Row_Number = End Sub

Now use the RANGE object and open this object.

Code:

Sub XLUP_Example1() Dim Last_Row_Number As Long Last_Row_Number = Range( End Sub

Now mention the active cell (A20) for RANGE object.

Code:

Sub XLUP_Example1() Dim Last_Row_Number As Long Range("A14").Select Last_Row_Number = Range("A20") End Sub

Now open END property for supplied range cell.

Code:

Sub XLUP_Example1() Dim Last_Row_Number As Long Range("A14").Select Last_Row_Number = Range("A20").End( End Sub

As you can see above, we have to arrow key options like “xlDown,” “xlToLeft,” “xlToRight,” “xlUp.” Since we are moving up from the A14 cell, choose the “VBA XLUP” option.

Code:

Sub XLUP_Example1() Dim Last_Row_Number As Long Range("A14").Select Last_Row_Number = Range("A20").End(xlUp) End Sub


After moving up from A14 cell, we need to mention what we need to do since we need the last used row number, I will use ROW property.

Code:

Sub XLUP_Example1() Dim Last_Row_Number As Long Range("A14").Select Last_Row_Number = Range("A20").End(xlUp).Row End Sub

Now for the message box, assign the value of variable “Last_Row_Number.”

Code:

Sub XLUP_Example1() Dim Last_Row_Number As Long Range("A14").Select Last_Row_Number = Range("A20").End(xlUp).Row MsgBox Last_Row_Number End Sub


Now you can run this code manually or through shortcut key F5 to see the result.

So message box showing the last used row number as 14, so our last data used row number is A14 cell.

In this case, since the data is very small, we started the room cell, but when the data is large, we cannot say which cell to take into consideration first. In such cases, we need to employ a different technique.

We need to use CELLS property. Below is an example of the same.

Code:

Sub XLUP_Example2() Dim Last_Row_Number As Long Last_Row_Number = Cells(Rows.Count, 1).End(xlUp).Row MsgBox Last_Row_Number End Sub

Now you can run this code manually or through shortcut key F5 to see the result.

Au lieu d'un objet RANGE, j'ai utilisé la propriété CELLS. Laissez-moi vous expliquer cela en détail.

ROW.COUNT cela comptera combien de lignes sont là dans la colonne 1. Ce que cela fera est qu'il prendra en considération la dernière cellule dans la feuille de calcul au lieu de l'adresse de cellule aléatoire. Dans le cas ci-dessus, nous avons utilisé A14 comme adresse de cellule aléatoire.

Choses à retenir sur VBA XLUP

  • XLUP est le mot utilisé dans le code VBA pour reproduire l'action de la touche «Flèche vers le haut» dans Excel.
  • VBA XLUP est utilisé pour passer des cellules actives à la cellule ci-dessus ou à la dernière cellule utilisée.
  • XLUP est généralement utilisé avec la propriété END dans VBA.

Articles intéressants...