website_lea/static/files/supports/calc_formules.md

8.9 KiB
Raw Blame History

author title pagetitle date license
Gregory Trolliet LibreOffice Calc -- Les formules Présentation 5 octobre 2020 CC-BY-SA

Présentation

Vos questions précises

Notions de base

Définition

  • **Classeur**
    Document qui contient plusieurs feuilles
  • **Feuille de calcul**
    Conteneur de cellules
  • **Cellule**
    Données à afficher et à manipuler

    Formules

::: notes Maximum 10'000 feuilles par classeur Maximum 1'000'000 de lignes et 1024 colonnes par feuille !Attention à la lenteur! :::

Référence

  • C7
  • B5:D12
  • \$MaFeuille.E2
  • \$AutreFeuille.E2:E9
  • 'file:///home/raghnarok/exo_1.ods'#\$SaFeuille.E2:E9
    Édition→Lien vers des fichiers externes→Actualiser

::: notes Si insertion depuis un autre document, il faut rouvrir le document pour accepter de charger les données distantes, sinon erreur 540. Update possible depuis Édition->Lien vers des fichiers externes->mise à jour.

!Attention difficultés lors du partage / déplacement de fichiers! :::

Référence absolues

Permet de s'assurer que la cellule cible ne soit pas modifiée lors du déplacement, de l'insertion de nouvelles lignes ou colonnes ou lors de copie.

  • \$C7 *Colonne*
  • D\$12 *Ligne*
  • \$E\$7

Nommer des cellules

Intérêt:

  • Simplifier les formules
  • Ne pas avoir à se rappeler de la position
  • Permettre de modifier une référence sans devoir modifier toutes les formules

Attention, ne fonctionne pas entre différents classeurs.

Feuille→Plages et expressions nommées→Gérer

::: notes Accessible depuis le menu déroulant en haut à gauche, coordonnée cellule :::

Exercices

Entrainez-vous à accéder correctement à des cellules ainsi qu'à les nommer.

Formats

Nombres

::: incremental

  • Différents formats complets:
    • 1.15
    • -0.456
  • Formats spéciaux:
    • 15%
    • CHF 14.50
    • 22/7 :::

Heures

::: incremental

  • 09:30
  • 09:30:15
  • 09:30:15.179 :::

Dates

  • 27.11.1987

Stockage

Tout est enregistré comme un nombre!

::: notes Dates => nombre de jours depuis le 30 décembre 1899 :::

Plage de validité

Possibilité de définir une liste de valeurs possibles pour une cellule.
Données→Validité...

Éviter à l'utilisateur / utilisatrice de se tromper

Exercices

  • Expérimenter les différents formats d'affichage de Calc
  • Modifier la plage de validité d'une ou plusieurs cellules

Les opérateurs

Opérateurs arithmétiques

::: incremental

  • + Addition =1+1
  • \ Soustraction =21
  • * Multiplication =2*2
  • / Division =10/5
  • % Pourcentage =15%
  • ^ Exponentiation =2^3 :::

Respectent l'ordre des opérations

Opérateurs logiques

::: incremental

  • = Égal A1=B1
  • > Supérieur à A1>B1
  • < Inférieur à A1<B1
  • >= Supérieur ou égal à A1>=B1
  • <= Inférieur ou égal à A1<=B1
  • <> Non égal A1<>B1 :::

Concaténation de texte

  • & Concatène le texte =B2 & ", " & B3 & " " & B5

Opérateurs de plage

  • A2:B4 *Plage de cellules*
  • B:B *Colonne entière*
  • B:D *Plusieurs colonnes*
  • 17:17 *Ligne entière*
  • 5:17 *Plusieurs lignes*
  • Feuille1.A3:Feuille3.D4 *Plage tridimensionnelle*

Les formules

Nommage

Attention, Calc traduit le nom des formules.

Possibilité de remettre en anglais si désiré:
Outils → Options → LibreOffice Calc → Formule → Utiliser les noms de fonction anglais

Fonctionnement

::: incremental

  • Nom, en majuscules
  • Paramètre·s
  • Valeur de retour :::

Les fonctions usuelles

  • Somme
  • Moyenne
  • Médiane
  • Produit

=SOMME(A1:A3)

=MOYENNE(A1,A3)

Les fonctions spécifiques

:::incremental

  • Arrondi =ARRONDI(Nombre, précision)
  • Troncation =TRONQUE(Nombre, précision)
  • Année =ANNEE(Date)
  • Année bissextile? =ESTBISSEXTILE(Date)
  • ... :::

Les fonctions matricielles

:::incremental

  1. Sélectionner une plage de la même taille que la source
  2. Entrer la formule
  3. Valider avec ctrl+shift+enter :::

Économise du temps de calcul et de l'espace disque

Les fonctions logiques

  1. Si *=SI(Test, Valeur si vrai, Valeur si faux)*
  2. Si avec plusieurs conditions *=SI.CONDITIONS(Test1, Valeur1, Test2, Valeur2, ...)*
  3. Si avec plusieurs valeurs *=SI.MULTIPLES(Expression, Valeur1, Résultat1, Valeur2, Résultat2, ...)*

Les fonctions de consolidation

:::incremental

  • Somme conditionnelle =SOMME.SI(Plage, critère, plage somme)
  • Somme de produits =SOMMEPROD(Plage1, Plage2)
  • Somme de produits conditionnelle
    =SOMMEPROD(Plage1, Plage2, Plage3="pomme") :::

::: notes Attention au temps de calcul si les plages deviennent grandes :::

Exercice

Calculer le nombre de kilos de chaque fruit commandé chaque mois. Pensez à décomposer le calcul.

:::notes =SOMMEPROD(sacs,poids,dates>=$A7,dates<SI(ESTVIDE($A8),DATE(2100,12,31), $A8),types=B$6) :::

Les erreurs

Erreurs courantes

:::incremental

  • #DIV0! → division par zéro → tester les valeurs
  • #NUM! → dépassement de la valeur maximum
  • #REF! → référence inexistante → feuille supprimée? :::

Exercice

Numérotation de lignes

:::incremental

  1. Numéroter les lignes automatiquement, même si on rajoute une ligne au milieu.
  2. Numéroter uniquement les lignes ayant des données. :::

:::notes =SI(ESTVIDE(B2),"",SI(LIGNE()=2,1,MAX(A1:A$1)+1)) :::

Les fonctions conditionnelles

Assistant Fonction

Pensez à utiliser l'assistant!

:::notes Petit logo fx en haut à gauche. Contient toutes les descriptions des fonctions ainsi que des paramètres

Exo: Se balader dans la liste :::

Liste

  • MOYENNE.SI
  • NB.SI
  • SOMME.SI
  • MAX.SI
  • ...

:::notes Si test en conditions, ne pas oublier les guillemets ">5"

Exo: Tester quelques fonctions avec la feuille ListeNombres. :::

Les recherches et filtres

Les filtres

:::incremental

  • AutoFiltre: Données→AutoFiltre
  • Filtre standard: Données→Plus de filtres→Filtre standard...
  • Filtre spécial, intérêt uniquement pour des usages spécifiques :::

:::notes Exo: Tester avec la feuille Filtres :::

Recherche

La fonction *RECHERCHE* nécessite une liste triée.

=RECHERCHE(Critère, Vecteur recherche, Vecteur résultat)

*RECHERCHEV* et *RECHERCHEH* permettent de chercher dans la première ligne d'une matrice, de spécifier quelle sera la ligne de résultat et de travailler avec une liste non triée.

=RECHERCHEV(Critère, Matrice, Indice[, Triée])

:::notes Avantage de RECHERCHEV, il est possible de modifier par une variable le paramètre de retour.

Si recherche ordonnée et valeur inexistante, renvoi la valeur précédent la valeur cherchée.

RECHERCHEV($G$4,$A:$D,COLONNE()-COLONNE($G$4)+2)

Exo: Tester avec la feuille Recherche :::

Valeur cible

La valeur cible permet de trouver une solution à une équation en variant un unique paramètre.

Outils→Recherche de valeur cible

Le solveur permet de faire varier plusieurs paramètres.

Outils→Solveur

:::notes Exo: Tester avec la feuille Résolution :::

Tableau dynamique

Permet de faire du tri et des calculs automatiquement.

Données→Table dynamique→Insérer ou éditer

:::notes Possibilité de modifier les calculs en double-cliquant sur le champ.

Exo: Tester avec la feuille Filtres ou Recherche :::

Questions?