Astuces · 10 techniques

Des astuces Excel expliquées, pas seulement montrées

Chaque astuce est démontrée en vidéo courte, et détaillée ici par écrit : la méthode, les fonctions employées, et surtout la limite que la vidéo n’a pas le temps de dire.

Excel
5 astuces
VBA
3 astuces
Power Query
2 astuces

Le catalogue

De la plus récente à la plus ancienne

  1. Excel intermédiaire

    Créer un calendrier dynamique dans Excel avec une seule formule

    Une liste de dates consécutives qui se régénère toute seule quand on change la date de départ ou la durée, sans la moindre ligne de code.

    Deux cellules suffisent en entrée : la date de début et le nombre de jours. La fonction SEQUENCE se charge du reste, avec une formule de la forme SEQUENCE(nombre_de_jours ; 1 ; date_de_début ; 1). Elle renvoie une plage entière à partir d’une seule cellule — ce qu’Excel appelle un résultat « déversé ».

    Le résultat sort en nombres : il ne reste qu’à appliquer un format de date à la colonne. Modifiez la date de début ou la durée, et le calendrier entier se reconstruit instantanément.

    L’intérêt va plus loin que l’affichage. Cette plage déversée peut alimenter une liste déroulante : dans la validation des données, on référence la première cellule suivie du signe dièse, par exemple $B$5#. La liste suit alors automatiquement la taille du calendrier, sans plage nommée à redimensionner.

    À savoir SEQUENCE et l’opérateur de plage déversée # exigent Microsoft 365 ou Excel 2021. Sur une version antérieure, il faut revenir à une plage nommée dynamique construite avec DECALER ou INDEX.

    • SEQUENCE
    • Plage déversée #
    • Validation des données

    Voir la démonstration Formation Excel

  2. Excel débutant

    Faire écrire ses formules Excel par Copilot

    Décrire en français la colonne que l’on veut obtenir, et laisser Excel proposer la formule correspondante.

    Ajouter une colonne calculée suppose de savoir quelle fonction employer, et dans quel ordre les imbriquer. C’est précisément là que la plupart des utilisateurs décrochent. Le volet Copilot, intégré au ruban d’Excel, renverse la démarche : on décrit le résultat attendu en une phrase, et il propose une colonne prête à être insérée.

    La formule produite reste une formule Excel ordinaire, visible et modifiable. Sur une extraction de noms et de codes, Copilot mobilise sans hésiter LET pour nommer ses étapes intermédiaires, puis GAUCHE, STXT, NBCAR, MAJUSCULE ou MINUSCULE selon le besoin. Le résultat est souvent plus lisible que ce qu’on aurait écrit dans l’urgence.

    C’est un accélérateur, pas un substitut à la compréhension : c’est vous qui signez le classeur, et vous qui devrez le corriger dans six mois.

    À savoir Copilot dans Excel demande un abonnement Microsoft 365 assorti d’une licence Copilot, et travaille sur des données mises en tableau structuré. Vérifiez systématiquement la formule proposée avant de la valider.

    • Copilot
    • LET
    • GAUCHE
    • STXT
    • NBCAR
    • MAJUSCULE
    • MINUSCULE

    Voir la démonstration Formation Excel

  3. Power Query débutant

    Récupérer un tableau enfermé dans un PDF

    Un collègue envoie un tableau en PDF. Le recopier prend une heure et demie ; l’importer en prend trois.

    Excel sait lire un PDF depuis l’onglet Données : Obtenir des données, À partir d’un fichier, À partir d’un PDF. Power Query s’ouvre et présente ce qu’il a détecté — chaque tableau repéré, page par page, dans un navigateur d’objets.

    On sélectionne le ou les tableaux voulus, on corrige au passage ce qui doit l’être — en-têtes promus, colonnes vides supprimées, types rétablis — puis on charge dans la feuille. Aucune formule, aucun code.

    Le vrai bénéfice arrive au PDF suivant : la requête étant enregistrée, remplacer le fichier source et actualiser suffit. Ce qui était une corvée mensuelle devient un clic.

    À savoir L’import ne fonctionne que sur un PDF contenant du texte. Un PDF issu d’un scan est une image : Power Query n’y verra rien, faute de reconnaissance de caractères. La fonction est disponible sur Excel pour Windows, à partir d’Excel 2016 avec Power Query et dans Microsoft 365.

    • Power Query
    • Import PDF
    • Actualisation des requêtes

    Voir la démonstration Formation Power Query

  4. Excel débutant

    Trouver la plus grande ou la plus petite valeur selon des critères

    Le maximum d’une colonne, mais seulement sur les lignes qui répondent à une ou plusieurs conditions.

    MAX et MIN ne savent pas filtrer. Pendant des années, obtenir « le montant le plus élevé pour la région Est » supposait une formule matricielle validée par une combinaison de touches, incompréhensible pour qui reprenait le fichier.

    MAX.SI.ENS et MIN.SI.ENS ont réglé la question. La syntaxe suit celle de SOMME.SI.ENS : d’abord la plage dont on cherche l’extremum, puis les couples plage de critère et critère, autant que nécessaire. MAX.SI.ENS(montants ; régions ; "Est" ; années ; 2026) se lit presque comme une phrase.

    Ce sont les fonctions en SI.ENS qui transforment un tableau en outil d’analyse : la même logique s’applique à SOMME.SI.ENS, NB.SI.ENS et MOYENNE.SI.ENS.

    À savoir Quand aucune ligne ne satisfait les critères, MAX.SI.ENS renvoie 0 et non une erreur. Sur des montants pouvant être négatifs, ce zéro se confond avec un vrai résultat : encadrez la formule d’un test sur NB.SI.ENS pour distinguer les deux cas. Ces fonctions demandent Excel 2019 ou Microsoft 365.

    • MAX.SI.ENS
    • MIN.SI.ENS
    • NB.SI.ENS

    Voir la démonstration Formation Excel

  5. Excel débutant

    Compter des cellules selon un ou plusieurs critères

    Combien de commandes de plus de 1 000 € passées en juin par la région Nord ? Une seule fonction répond, quel que soit le nombre de conditions.

    NB.SI.ENS accepte autant de couples plage/critère que nécessaire, et les combine par un ET logique : une ligne n’est comptée que si elle satisfait toutes les conditions. Avec un seul couple, elle remplace avantageusement NB.SI, dont il devient inutile de se souvenir.

    Les critères ne se limitent pas à l’égalité. On écrit ">1000" pour une comparaison, "<>" pour exclure les vides, ou "Dupont*" pour tout ce qui commence par Dupont — l’astérisque remplace une suite de caractères, le point d’interrogation un caractère unique.

    C’est cette fonction, et non le filtre manuel, qui permet de construire un tableau de synthèse qui se met à jour tout seul.

    À savoir Deux pièges classiques. Toutes les plages de critères doivent avoir exactement la même hauteur que la première, sinon Excel renvoie #VALEUR!. Et pour comparer à la valeur d’une cellule, l’opérateur doit être concaténé : ">"&B2, et non ">B2" qui serait pris pour du texte.

    • NB.SI.ENS
    • NB.SI
    • Caractères génériques

    Voir la démonstration Formation Excel

  6. Excel intermédiaire

    Afficher un Top 3 dynamique sans trier le tableau

    Extraire les trois plus fortes valeurs et les libellés qui vont avec, directement depuis le tableau source, sans le toucher.

    Trouver le maximum est immédiat. Trouver la deuxième ou la troisième plus grande valeur l’est beaucoup moins — et trier le tableau pour y parvenir revient à sacrifier son ordre d’origine.

    GRANDE.VALEUR règle le problème : elle prend une plage et un rang, et renvoie la valeur de ce rang. GRANDE.VALEUR(plage ; 1) donne le maximum, GRANDE.VALEUR(plage ; 2) la suivante, et ainsi de suite. En plaçant les rangs 1, 2 et 3 dans une colonne, on obtient un classement qui se recalcule à chaque modification du tableau.

    Reste à retrouver le nom associé à chaque valeur : c’est le rôle de RECHERCHEX, qui cherche la valeur classée dans la colonne des montants et renvoie le libellé correspondant. Deux fonctions, et le podium se met à jour tout seul.

    À savoir Attention aux ex æquo : si deux lignes portent la même valeur, RECHERCHEX renverra deux fois le même libellé, celui de la première occurrence rencontrée. Sur des données susceptibles de comporter des doublons, il faut départager les rangs, par exemple en ajoutant une fraction dérivée du numéro de ligne.

    • GRANDE.VALEUR
    • RECHERCHEX

    Voir la démonstration Formation Excel

  7. VBA intermédiaire

    Empêcher la suppression de colonnes sans protéger la feuille

    Protéger la structure d’un tableau partagé, sans mot de passe à conserver ni à transmettre.

    La protection de feuille pose un dilemme connu. Sans mot de passe, elle se lève en deux clics et ne protège rien. Avec mot de passe, elle finit par bloquer la seule personne qui en avait besoin, le jour où le mot de passe est perdu — et la direction refuse souvent le principe même.

    Une autre voie consiste à surveiller le classeur par le code, en deux temps. À chaque changement de sélection, on mémorise le nombre de colonnes occupées. À chaque modification, on le compare à celui d’avant : s’il a changé, une colonne a été ajoutée ou supprimée, et l’opération est annulée.

    L’annulation passe par Application.Undo, exactement comme un Ctrl+Z. Le détail qui compte est l’encadrement par EnableEvents : sans lui, l’annulation serait elle-même vue comme une modification et relancerait l’événement en boucle.

    L’utilisateur voit sa suppression se défaire d’elle-même, avec un message qui explique pourquoi. Aucun mot de passe n’est en jeu, et la feuille reste modifiable partout ailleurs.

    À savoir Le code suppose un classeur .xlsm et des macros autorisées : c’est un garde-fou contre les fausses manœuvres, pas une barrière de sécurité. Application.Undo n’annule que la dernière action et vide au passage la pile d’annulation d’Excel.

    Dans le module ThisWorkbook — ce sont des événements de classeur, ils ne fonctionnent pas depuis un module standard ni depuis une feuille.
    Private Nb_col_initial      As Long
    
    Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range)
    ' 1) Pour enregistrer le nombre de colonnes
        Nb_col_initial = Sh.UsedRange.Columns.Count
    End Sub
    
    Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
    ' 2) Pour détecter des ajouts/suppressions de colonnes
        Dim Nb_col_actuel       As Long
    
        'Récupérer le nombre de colonnes actuel après un changement
        Nb_col_actuel = Sh.UsedRange.Columns.Count
    
        'Comparer le nombre de colonnes avant et après le changement
        If Nb_col_actuel <> Nb_col_initial Then
    
            'Si une colonne a été ajoutée ou supprimée => annuler l'action
            Application.EnableEvents = False
            Application.Undo 'Ctrl + Z
            MsgBox "L'ajout ou la suppression de colonnes est interdit dans cette zone.", _
                   vbExclamation, "Ajout/suppression de colonne interdit !"
            Application.EnableEvents = True
        End If
    
    End Sub
    • Workbook_SheetChange
    • UsedRange.Columns.Count
    • Application.Undo
    • EnableEvents

    Voir la démonstration Formation VBA

  8. VBA intermédiaire

    Protéger ses formules contre l’écrasement, sans mot de passe

    Même principe que pour les colonnes, appliqué cette fois aux cellules qui contiennent une formule.

    Dans un fichier partagé, les formules ne survivent jamais très longtemps : une saisie directe par-dessus, et le calcul est remplacé par une valeur figée. Le plus gênant est que rien ne le signale — le classeur continue d’afficher un nombre plausible.

    La parade repose sur la même mécanique en deux temps, et sur une subtilité de calendrier. Une fois la saisie faite, il est trop tard pour savoir ce que la cellule contenait : la formule a déjà disparu. Le test doit donc avoir lieu *avant*, au moment où l’utilisateur sélectionne la cellule.

    C’est le rôle du premier événement : il parcourt la sélection et mémorise, dans un booléen, la présence d’au moins une formule — c’est ce que teste la propriété HasFormula. Le second événement se contente alors de lire ce booléen et d’annuler la saisie si nécessaire.

    Les zones de saisie restent libres, les zones calculées deviennent intouchables, et personne n’a de mot de passe à gérer.

    À savoir Comme pour l’astuce précédente : classeur au format .xlsm et macros autorisées. La protection agit à la saisie, elle ne chiffre ni ne verrouille quoi que ce soit — c’est un garde-fou, pas un coffre-fort.

    Dans le module ThisWorkbook, comme l’astuce précédente : ce sont des événements de classeur, ils couvrent donc toutes les feuilles d’un coup.
    Public booFormule_dans_cell     As Boolean
    
    Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range)
    ' 1) Pour détecter une plage de cellules contenant une FORMULE
    
        Dim n           As Long
    
        For n = 1 To Target.Cells.Count
    
            If Target.Cells(n).HasFormula Then
                booFormule_dans_cell = True
                Exit For
            Else
                booFormule_dans_cell = False
            End If
    
        Next n
    
    End Sub
    
    Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
    ' 2) Pour annuler l'édition d'une cellule contenant une FORMULE
    '    (formule détectée dans la SelectionChange ci-dessus)
    
        If booFormule_dans_cell = True Then
    
            Application.EnableEvents = False
            Application.Undo 'Ctrl + Z sur la dernière action
            Application.EnableEvents = True
            MsgBox "Cette zone contient une formule et ne doit pas être éditée.", _
                   vbExclamation, "Ne pas modifier"
    
        End If
    
    End Sub
    • Workbook_SheetSelectionChange
    • HasFormula
    • Application.Undo
    • EnableEvents

    Voir la démonstration Formation VBA

  9. VBA intermédiaire

    Actualiser un tableau croisé dynamique automatiquement

    Un TCD ne se met pas à jour tout seul. Il suffit d’oublier un clic pour présenter des chiffres périmés.

    C’est l’erreur la plus fréquente et la plus coûteuse sur un tableau de bord Excel : la source a été complétée, le tableau croisé affiche encore les valeurs de la semaine dernière, et personne ne s’en aperçoit avant la réunion.

    Un événement de feuille règle la question, et le choix de l’événement compte autant que le code. Placé sur la feuille qui *porte* le tableau croisé, l’événement de changement de sélection se déclenche dès qu’on vient regarder le tableau — c’est-à-dire exactement au moment où il doit être à jour, et pas à chaque frappe dans la table source.

    La méthode employée mérite elle aussi l’attention. PivotCache.Refresh relit les données de la source, ce qui est indispensable pour voir apparaître les lignes ajoutées. RefreshTable, souvent proposée à sa place, se contente de redessiner le tableau à partir du cache existant : les nouvelles lignes n’apparaîtraient pas.

    Pour tout actualiser d’un coup — tableaux croisés, requêtes Power Query et connexions externes —, ThisWorkbook.RefreshAll fait le travail en une ligne, au prix d’un rafraîchissement complet.

    À savoir Le nom du tableau croisé est écrit en dur dans le code : le renommer dans Excel casse la macro, sans message d’erreur explicite. Et comme les deux astuces précédentes, cela suppose un classeur .xlsm avec les macros autorisées.

    Dans le module de la feuille qui contient le tableau croisé — pas dans ThisWorkbook, ni dans un module standard. Sans qualificateur, PivotTables désigne les tableaux croisés de cette feuille-là.
    Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    
    'Pour actualiser un TCD en particulier
    PivotTables("TCD des Primes").PivotCache.Refresh
    
    End Sub
    • Worksheet_SelectionChange
    • PivotCache.Refresh
    • RefreshAll

    Voir la démonstration Formation VBA

  10. Power Query débutant

    Convertir la photo d’un tableau en données Excel

    Même principe que pour le PDF, mais à partir d’une capture d’écran ou d’une photo — Excel lit l’image et en extrait un vrai tableau.

    La commande se trouve dans l’onglet Données, juste à côté des outils d’import : À partir d’une image, au choix depuis un fichier ou depuis le presse-papiers. Excel analyse l’image, reconnaît la grille et propose les données extraites.

    Un volet de vérification s’ouvre alors et signale les cellules dont il n’est pas certain. On corrige à la volée, on insère, et le tableau atterrit dans la feuille. Une photo de tableau prise en réunion devient exploitable en une minute.

    À savoir La qualité du résultat dépend entièrement de celle de l’image : cadrage droit, contraste net, pas de reflet. Relisez systématiquement les colonnes de chiffres — une virgule mal lue passe inaperçue et fausse tout le reste.

    • Données à partir d’une image
    • Reconnaissance de tableau

    Voir la démonstration Formation Power Query

Précisions

Comment lire ces astuces

Les vidéos

Elles sont publiées sur LinkedIn. Le lecteur ne se charge que si vous cliquez : tant que vous ne l’avez pas fait, aucune requête n’est envoyée à LinkedIn et rien n’est déposé sur votre appareil.

Les réserves

Chaque astuce indique sa limite : version d’Excel requise, cas où la méthode échoue, piège à éviter. C’est ce qui manque le plus souvent aux astuces trouvées en ligne, et ce qui fait perdre le plus de temps.

Et pour aller plus loin

Une astuce résout un point précis. Construire un fichier qui tient dans la durée relève d’autre chose : chaque astuce renvoie vers la formation qui traite son domaine.

Prendre contact

Décrivez le fichier qui vous fait perdre du temps

Le contexte suffit pour démarrer : nombre de personnes concernées, outils en place, échéance. Je réponds avec une proposition de programme et un devis.

Zone d'intervention Nancy, Grand Est, distanciel