Je documente ici des fonctions qui m’aident à remplir certaines fonctions sous Microsoft Excel ou Libre Office Calc. J’en rejouterai d’autres dans le futur.
Compter le nombre de dates dans une colonne
Imagions la situation suivante: Des dates et des heures arrangées simplement visuellement. Comment savoir le nombre de dates dans la colonne A?
A | B |
08/12/21 | 10:30 |
10:45 | |
12:30 | |
13:15 | |
14:15 | |
18:30 | |
19:15 | |
09/12/21 | 07:45 |
08:25 |
La fonction est =SOMMEPROD(--ESTNUM(A:A))
.
La commande ESTNUM
renvoie vrai si une cellule de toute la colonne A
contient un nombre. Une date est interprété comme nombre, si la colonne contient aussi des nombres, ils seront aussi additionnés. Je n’ai pas trouvé de fonction qui teste vraiment sur le type date.
Les deux signes négatifs --
ne sont pas forcément nécessaires, mais ils forcent un résultat en 0
et 1
au lieu de vrai
et faux
.
SOMMEPROD
additionne les cas vrais donc les 1
.
Additionner des durées d’une colonne suivant un type définit dans une autre colonne
Nous reprenons le tableau d’en haut avec des colonnes en plus. La colonne B
contient des heures relevés, la colonne C
affiche la différence entre deux heures consécutives ( par exemple C2=B3-B2
). La colonne D
contient des abréviations de type d’activités. Nous voulons connaitre combien de temps les activités h
et sw
ont duré en somme.
A | B | C | D |
08/12/21 | 10:30 | 00:15 | h |
10:45 | 01:45 | p | |
12:30 | 00:45 | h | |
13:15 | 01:00 | sw | |
14:15 | 04:15 | p | |
18:30 | 00:45 | h | |
19:15 | |||
09/12/21 | 07:45 | 00:40 | h |
08:25 | 00:05 | p |
Les fonctions sont =SOMME.SI.ENS(C:C;D:D;"h")
et =SOMME.SI.ENS(C:C;D:D;"sw")
.
Il s’agit d’une fonction unique qui additionne les valeurs d’une colonne (ici C
) suivant des critères de la colonne D
, ici il ne s’agit que de vérifier la correspondance (à h
et sw
), on peut aussi additionner des opérateurs logiques dans le champ critère. La fonction permet de rajouter d’autres doubles de référence à des colonnes et de critères.
Faire référence à une valeur dans une cellule définie par des variables
Imaginons le cas d’un tableau composé de plusieurs feuilles dont la dernière doit rassembler des valeurs des précédentes suivant certains critères. Nous savons que nos valeurs se trouvent dans le feuille tops
dans la colonne C
, mais la ligne se compose d’un calcul dans la feuille active. Il faut donc former par exemple les valeurs tops.C2
ou tops.C45
, où le chiffre est variable.
La fonctions est =INDIRECT(CONCATENER("tops.C";$B$1+$B$2))
.
La commande CONCATENER
permet d’ajouter des bouts de texte un à un, dans ce cas nous ajoutons à tops.C
le résultat du calcul $B$1+$B$2
.
La commande INDIRECT
renvoie le contenu d’une cellule à partir d’un texte. Sans cette dernière commande, on n’afficherait que tops.C2
ou tops.C45
et pas la valeur de ces cellule dans l’autre feuille.
No Comments