Parcourez rapidement une table

Une des frustrations lorsque l'on travaille sur une table avec de nombreuses colonnes, est de pouvoir rapidement se déplacer d'une colonne à une autre.

Voici un petit code qui va prendre deux minutes à installer et qui peut vous rendre de grands services.

Vous pouvez télécharger ici le fichier.

Voici la procédure en vidéo :

Procédure détailllée

  • Ouvrez le fichier excel (sauvegardé en .xlsm pour avoir les macros)
  • Ajoutez un userform
  • Ajouter une listbox
  • Dans la fenêtre propriété (touche F4), renommez l'userform (ufDeplacement) et la listbox (ListBoxColonnes)
  • Clic droit sur l'userform pour accéder au code
  • Collez le code ci-dessous :
Option Explicit

Private Sub ListBoxColonnes_Click()
    Application.Goto Cells(ActiveCell.Row, _
        ActiveSheet.ListObjects("Tableau1").HeaderRowRange.Column + _
        Me.ListBoxColonnes.ListIndex), True
End Sub

Private Sub UserForm_Initialize()
Me.ListBoxColonnes.List = _
    Application.WorksheetFunction.Transpose( _
        ActiveSheet.ListObjects("Tableau1").HeaderRowRange)
End Sub
  • Finalement, insérez un nouveau module et collez le code suivant pour lancer l'userform
Sub AfficherufDeplacement()
    ufDeplacement.Show
End Sub
Pour marque-pages : Permaliens.

4 réponses à Parcourez rapidement une table

  1. Patrick dit :

    Bonjour Gaetan : Pour commencer recevez tous mes meilleurs vœux de bonheur santé et prospérité pour cette nouvelle année 2020.
    Un grand merci pour cette formation super pratique simple mais efficace.

  2. papoo dit :

    Bonjour
    merci pour ce tutoriel fort simple et très pratique
    est il possible de faire la même chose pour une navigation dans les onglets?

  3. Gaetan dit :

    Oui, il faut parcourir toutes les feuilles avec un
    for each wks in thisworkbook.worksheets

    utiliser le listbox1.additem wks.name pour ajouter les feuilles à la listbox

    J’en ai fait une vidéo complète dans ce cours 🙂
    https://www.xlerateur.com/collection-vba-avance-volume-2/

  4. papoo dit :

    merci

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.