Aide-mémoire

Les formules que Biscuit rapporte le plus souvent

Une référence qui marche. Copie, colle, retourne à ta journée. Pas de pub, pas de pop-up, pas de chatbot qui mendie ton email.

Petit tuyau de Biscuit : ctrl+F est ton ami ici. J'ai tout rangé pour que tu trouves n'importe quoi en moins de quinze secondes.
Section 1

Sommes et décomptes

Compter les lignes qui matchent une condition

=COUNTIF(A:A, "Denver")

Retourne le nombre de cellules de la colonne A qui valent exactement "Denver".

Compter avec un joker

=COUNTIF(A:A, "*Denver*")

Utilise les astérisques pour les matchs partiels. Fonctionne dans Excel et Google Sheets.

Compter avec plusieurs conditions

=COUNTIFS(A:A, ">10", B:B, "active")

Chaque paire condition-plage est en ET. Pour un OU, additionne deux COUNTIFS.

Additionner seulement les lignes qui matchent

=SUMIF(A:A, "Denver", B:B)

Additionne les valeurs de la colonne B quand la colonne A vaut "Denver".

Somme avec plusieurs conditions

=SUMIFS(B:B, A:A, "Denver", C:C, ">=100")

Dans SUMIFS, la plage de valeurs vient en premier, puis les paires de conditions. Facile d'inverser par erreur.

Total cumulé

=SUM($B$2:B2)

Tire vers le bas. L'ancrage bloque le début, la fin relative grandit au fur et à mesure.

Section 2

Recherches

VLOOKUP de base

=VLOOKUP(A2, Products!A:C, 3, FALSE)

Cherche A2 dans la colonne A de Products, retourne la 3e colonne. FALSE signifie correspondance exacte.

INDEX/MATCH (mieux)

=INDEX(Products!C:C, MATCH(A2, Products!A:A, 0))

Biscuit préfère ça. Gère les insertions de colonnes et peut chercher à gauche.

XLOOKUP (Excel récent)

=XLOOKUP(A2, Products!A:A, Products!C:C)

Le remplaçant moderne. Plus propre, gère mieux les erreurs. Pas encore dispo dans Google Sheets.

Correspondance approximative (données triées)

=VLOOKUP(A2, Brackets!A:B, 2, TRUE)

TRUE signifie : trouve la plus grande valeur inférieure ou égale à A2. Utile pour les tranches d'impôts.

Recherche à deux axes

=INDEX(Data!B:Z, MATCH(A2, Data!A:A, 0), MATCH(B2, Data!1:1, 0))

Ligne et colonne matchées dynamiquement.

Section 3

Texte et regex

Virer les espaces

=TRIM(A2)

Enlève les espaces en début, en fin et les doublons internes.

Casse de titre

=PROPER(A2)

"hello world" devient "Hello World".

Concaténer avec un séparateur

=TEXTJOIN(", ", TRUE, A2:A10)

Le TRUE ignore les cellules vides.

Extraire le domaine d'un email

=MID(A2, FIND("@", A2)+1, LEN(A2))

FIND localise le @, MID prend tout ce qui suit.

Regex extract (Google Sheets)

=REGEXEXTRACT(A2, "[a-zA-Z0-9._+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]+")

Sort la première adresse email de n'importe quel bazar.

Regex replace

=REGEXREPLACE(A2, "\s+", " ")

Réduit tous les blancs à un seul espace.

Section 4

Dates

Date du jour

=TODAY()

Se met à jour à chaque recalcul de la feuille.

Jours entre deux dates

=B2-A2

Les dates sont des nombres sous le capot. La soustraction marche tout seul.

Nom du mois depuis une date

=TEXT(A2, "mmmm")

Retourne "January", "February", etc.

Premier jour du mois en cours

=EOMONTH(TODAY(), -1)+1

EOMONTH veut dire "fin de mois". Recule d'un mois, ajoute un jour.

Début de la semaine ISO (lundi)

=A2-WEEKDAY(A2, 3)

WEEKDAY avec le type 3 retourne 0 pour lundi, donc le soustraire tombe pile sur lundi.

Jours ouvrés entre deux dates

=NETWORKDAYS(A2, B2)

Exclut les samedis, dimanches, et des jours fériés en option.

Section 5

Matrices (Google Sheets)

Appliquer une formule à toute une colonne

=ARRAYFORMULA(A2:A*2)

Finies les descentes sur des milliers de lignes.

QUERY en syntaxe SQL

=QUERY(Data!A:D, "SELECT A, SUM(C) WHERE B='active' GROUP BY A", 1)

Fais comme si tu écrivais du SQL. Ça marche vraiment.

FILTER

=FILTER(A:B, B:B>100, C:C="active")

Retourne les lignes qui matchent. Plus besoin de bidouiller des formules matricielles.

UNIQUE

=UNIQUE(A:A)

Retourne chaque valeur distincte de la colonne A. Trie dans l'ordre rencontré, pas alphabétique.

SORT

=SORT(A2:C, 2, FALSE)

Trie par la deuxième colonne, en descendant.

Section 6

Snippets VBA

Masquer toutes les feuilles sauf l'active

Sub HideOthers()
  Dim s As Worksheet
  For Each s In ThisWorkbook.Worksheets
    If s.Name <> ActiveSheet.Name Then s.Visible = xlSheetHidden
  Next s
End Sub

Plie rapidement un classeur pour ne garder que ce sur quoi tu bosses vraiment.

Supprimer les lignes vides dans la plage utilisée

Sub KillEmpties()
  Dim r As Long
  For r = ActiveSheet.UsedRange.Rows.Count To 1 Step -1
    If Application.CountA(Rows(r)) = 0 Then Rows(r).Delete
  Next r
End Sub

On parcourt à l'envers pour que les numéros de lignes ne bougent pas quand tu supprimes.

Ouvrir tous les fichiers d'un dossier

Sub LoopFolder()
  Dim f As String
  f = Dir("C:\path\to\folder\*.xlsx")
  Do While f <> ""
    Workbooks.Open "C:\path\to\folder\" & f
    f = Dir()
  Loop
End Sub

Boucle Dir classique. Parfait quand tu as un dossier plein de rapports mensuels.

Tu n'as pas trouvé ?

Décris-le dans le playground, Biscuit capte assez vite.

Dis-moi ce qu'il te faut en français simple. Je rapporte la formule.
Essayer le playground