Table des matières:
Vidéo: MACRO: SÉLECTIONNER TOUTE LA LIGNE ET LA COLONNE ACTIVE DANS UN TABLEAU EN VBA - DOCTEUR EXCEL 2025
Lorsque vous distribuez vos rapports Excel à vos clients, il est souvent agréable d'ajouter quelques cloches et sifflets. L'une des améliorations les plus faciles à appliquer est la possibilité de trier lorsque l'on double-clique sur un en-tête de colonne. Bien que cela puisse sembler compliqué, c'est relativement facile avec cette macro.
Vous pouvez télécharger un exemple pratique de cette technique de double-clic dans Excel.
Fonctionnement de la macro
Dans cette macro, vous trouvez d'abord la dernière ligne non vide. Vous utilisez ensuite ce numéro de ligne pour définir la plage cible des lignes que vous devez trier. À l'aide de la méthode Sort, vous triez les lignes cibles par la colonne sur laquelle vous avez cliqué deux fois.
Private Sub Worksheet_BeforeDoubleClick (Cible ByVal comme Range, Cancel As Boolean) 'Étape 1: Déclarez vos variables Dim LastRow As Long' Étape 2: Trouvez la dernière ligne non vide LastRow = Cells (Lignes., 1). End (xlUp). Ligne 'Étape 3: Trier ascendant sur les lignes de colonne double-cliqué ("6:" & LastRow). Sort _ Key1: = Cellules (6, ActiveCell.Column), _ Order1: = xlAscending End Sub
À l'étape 1, vous déclarez une variable Long Integer appelée LastRow pour contenir le numéro de ligne de la dernière ligne non vide.
A l'étape 2, vous capturez la dernière ligne non vide en commençant à la dernière ligne de la feuille de calcul et en utilisant la propriété End pour passer à la première cellule non vide (l'équivalent de la cellule A1048576 et en appuyant sur Ctrl + Maj + flèche vers le haut).
Notez que vous devez remplacer le numéro de colonne de cette cellule par celui correspondant à votre ensemble de données. Par exemple, si votre table commence sur la colonne J, vous devez modifier l'instruction à l'étape 2 en cellules (lignes, nombre, 10). End (xlUp). Row parce que la colonne J est la 10ème colonne de la feuille de calcul.
À l'étape 3, vous définissez la plage totale de lignes pour vos données. Gardez à l'esprit que la plage de lignes doit commencer par la première ligne de données (sauf les en-têtes) et se termine par la dernière ligne non vide. Dans ce cas, votre fichier commence à la ligne 6, vous utilisez donc la méthode Sort sur les lignes ("6:" & LastRow).
L'argument Key indique à Excel quelle plage doit être triée. Encore une fois, vous voudrez vous assurer que la plage que vous utilisez commence par la première ligne de données (à l'exclusion des en-têtes).
Comment utiliser la macro
Pour implémenter cette macro, vous devez la copier et la coller dans la fenêtre du code d'événement Worksheet_BeforeDoubleClick. Placer la macro ici lui permet de s'exécuter chaque fois que vous double-cliquez sur la feuille:
-
Activez Visual Basic Editor en appuyant sur ALT + F11.
-
Dans la fenêtre Projet, recherchez le nom de votre projet / classeur et cliquez sur le signe plus à côté pour voir toutes les feuilles.
-
Cliquez sur la feuille à partir de laquelle vous voulez déclencher le code.
-
Dans la liste déroulante Événement, sélectionnez l'événement BeforeDoubleClick.
-
Tapez ou collez le code.
