I. Objectif Manipulation des fonctions de listes dans un tableur Valérie Bellynck / David Rouquet - 2009, Grenoble-INP Pagora Ce document présente les fonctionnalités offertes par les tableurs comme Excel et OpenOffice-calc, pour traiter les listes de données. Le logiciel choisi pour illustrer ce document est OpenOffice-calc (OOo-calc). Comme les tableurs servent à faire des calculs sur des données présentées dans les cellules de tableaux, avec un nombre de lignes pouvant aller jusqu'à 65000 pour Excel, on les utilise souvent pour gérer des données. Il est fréquent qu un tableau représente une liste d éléments analogues, les attributs de chacun de ces éléments étant spécifiés dans les colonnes, sur une même ligne : ce sont les champs. Par exemple une liste d étudiants peut se présenter dans un tableau dont les colonnes contiennent le numéro d étudiant, l'année d'inscription, le profil de provenance, le groupe de TD, les nom et prénom, le «login» du compte informatique, le dernier diplôme, l'établissement de provenance, la ville de cet établissement, le type de cursus, l'entreprise de stage ou de contrat d'apprenti... l'adresse électronique académique, des notes et la moyenne courante des notes... Les tableurs proposent des outils pour manipuler les listes. En particulier, les fonctionnalités de gestion de listes contiennent : les tris... Quand un tableau contient des en-têtes de colonnes, et que la liste des données correspondantes se présente sous ces entêtes de façon continue (sans sauter une ligne après les en-têtes, et sans sauter de colonnes), le tableur repère automatiquement les limites de la liste (les dernières lignes et colonnes qui contient des valeurs) et les en-têtes de colonne pour y appliquer les fonctionnalités. Il n est pas nécessaire de la sélectionner au préalable, il suffit de cliquer n importe où dans la liste. Il est recommandé d éviter de créer plusieurs listes dans une même feuille. II. Les tris On peut trier les données par ordre croissant ou décroissant des valeurs d une colonne. On peut aussi combiner plusieurs critères de tri, si l on veut trier successivement sur les valeurs de plusieurs colonnes. Par exemple, étant donné un tableau comprenant une liste d étudiants dont le groupe figure dans la quatrième colonne et le nom dans la cinquième, on peut demander à trier les étudiants d abord en fonction de leur groupe, puis par ordre alphabétique de leurs noms. Pour cela, on choisit la commande Données Trier. Une boîte de dialogue permet de préciser jusqu'à trois critères à appliquer successivement. Il suffit de sélectionner pour chacun de ces critères la clé associée, c est-à-dire le nom de la colonne concernée.
III. Filtre automatique Quand un tableau contient un grand nombre de données, on peut désirer n en voir qu un sous-ensemble auquel on s intéresse plus particulièrement. Le filtre automatique permet : 1. d exprimer très simplement les critères selon lesquels on veut filtrer les données, et 2. de n afficher que les données vérifiant ces critères. Seul l affichage des données du tableau est modifié, les données qui n apparaissent plus sont toujours en mémoire. Pour faire cela, on choisit la commande Données/Filtre et on choisit «AutoFiltre». OOo repère les titres des colonnes et associe à chacun une liste (accessible en cliquant sur la petite flèche) de toutes les valeurs présentes dans cette colonne. Ainsi, pour une ou plusieurs colonnes, on peut sélectionner une valeur particulière dans la liste, et seules les lignes ayant cette valeur seront affichées. Si on souhaite élaborer un critères plus compliqué, on peut sélectionner «Filtre Standard» dans le menu Filtres. On peut alors entrer deux conditions, combinées par un Et ou un Ou. Dans l exemple ci-dessous, on sélectionne les étudiants en apprentissage ayant obtenu plus de 13 en note-a.
Pour supprimer le filtre automatique, il suffit de choisir à nouveau la commande Données AutoFiltre. IV. Filtres élaborés OOo permet d exprimer des critères sur une liste qui sont plus élaborés que ceux qu on peut exprimer avec le filtre automatique (jusqu'à huit critères combinés). Création d une zone de critères : Il faut d abord créer une zone de critères dans une zone vide de la même feuille (séparée de la liste de données par au moins une ligne) Pour cela, on doit soit ajouter au-dessus de la liste au moins 3 lignes, soit se placer après la fin de la liste, coller dans la première ligne de la zone libre les étiquettes de colonne qui sont susceptibles d intervenir comme critère (pas nécessairement toutes) Utilisation de la zone de critères : Pour exprimer un critère relatif à une en-tête de colonne, il suffit d entrer sous l en-tête l expression du critères : soit une simple valeur (par exemple sous Cursus, on entre Etudiant), soit une expression de comparaison (par exemple sous Note-a, on entre >12). Pour combiner deux critères, il faut choisir si il doivent être combinés : par un ET (les deux doivent être vérifiés simultanément), par un OU (l un ou l autre doit être vérifier). Pour exprimer une combinaison par un ET, il suffit d entrer les 2 critères sur une même ligne. Pour exprimer une combinaison par un OU, il suffit d entrer les 2 critères sur deux lignes différentes. Lancement du filtrage élaboré : Pour appliquer le filtrage défini dans la zone de critères, il faut sélectionner les données à trier puis lancer la commande Données/Filtre/Filtre Spécial. On obtient alors une boîte de dialogue où on doit préciser la plage correspondant à la zone de critères. Attention : la zone de critères entrée dans cette boîte de dialogue ne doit pas contenir de ligne entièrement vide!
Dans l exemple ci-dessus, la zone de critères a été mise en forme pour permettre jusqu à deux critères combinés par des OU (quatre lignes). La liste que l'on souhaite trier est surlignée en bleu, la zone de critère est encadrée en bleu. Le critère exprimé signifie : tous les étudiants issus de DUT Informatique et ayant plus de 11 en note-a OU les étudiants issus de Prépa Intégrée. V. Sous totaux OOo permet de calculer automatiquement des sous-totaux qui jalonnent une longue liste. Par exemple, étant donné une liste d étudiants triée selon le groupe auxquels ils appartiennent, on peut effectuer le sous-total de l effectif pour chaque groupe. Il faut choisir la commande Données/Sous-totaux. Une boîte de dialogue permet de préciser : 1. le critère qui détermine l introduction d un sous-total (par exemple, à chaque changement de groupe), 2. la fonction qui calcule ce sous-total (une somme, un décompte, etc.), 3. la colonne sur laquelle est calculé ce sous-total. Plusieurs sous totaux peuvent être insérés grâce aux onglets «groupe». Chaque onglet contient un bouton pour supprimer le sous-total. L'onglet option permet d'insérer des sauts de page entre les groupes ou de les trier automatiquement.
Sur la gauche, des barres de groupement par niveau permettent de réduire certains groupes pour n'en afficher que le sous total (+/-). VI. Pilote de données (équivalent du tableau croisé dynamique Excel) Un tableau croisé dynamique est un tableau interactif qui permet d'effectuer une synthèse rapide et de croiser de grandes quantités de données. On peut faire pivoter ses lignes et ses colonnes pour obtenir différentes synthèses des données source, filtrer les données en affichant différentes pages, ou afficher les détails pour les zones qui vous intéressent. Les données sources peuvent être une liste stockée dans une feuille OOo-calc. L assistant Tableau croisé dynamique (commande Données/Pilote de données) propose des étapes pour composer le tableau croisé à partir des champs de la liste. On peut ainsi composer un tableau qui, en fonction du groupe ( inséré dans le champ de la page) nous donnera la moyenne des notes (dans le champ de données) par année (dans le champ de colonne) et par cursus (dans le champ ligne). Le tableau suivant (dans lequel on peut sélectionner le groupe) a été réalisé à l'aide de l'assistant «Pilote de données» ci-après.
VII. Fonctions de recherche Les fonctions de recherche d OOo effectuent une recherche dans la première colonne (ou première ligne) d'un tableau et se déplacent sur la ligne (ou la colonne) pour renvoyer la valeur d'une cellule. Elles servent lorsqu on a un tableau de référence, comme un dictionnaire, et qu on a besoin d aller y chercher des informations particulières pour les utiliser dans un autre tableau. La syntaxe est la suivante : =RECHERCHEV(critère_de_recherche;matrice;index;ordre_de_tri) critère_de_recherche est la référence de la cellule dans laquelle on entre la valeur cherchée (la recherche se fait sur la première colonne de la matrice) matrice est la référence qui doit comprendre au moins deux colonnes. index est le numéro de la colonne dans la matrice qui contient les valeurs devant être renvoyées. La première colonne a le numéro 1. ordre_de_tri indique si la première colonne de la matrice est triée en ordre croissant. Saisissez la valeur logique FAUX ou zéro si la première colonne n'est pas triée en ordre croissant. Les colonnes triées peuvent être recherchées plus rapidement et la fonction renvoie toujours une valeur, même si la valeur de recherche ne correspond pas exactement. Dans les listes non triées, la valeur de recherche doit correspondre exactement. Sinon la fonction renvoie ce message Erreur : valeur non disponible. VIII. A rendre Un tableau Ooo-calc contenant 4 feuilles : 1. La liste des étudiants triée selon un (ou plusieurs) critères de votre choix 2. La liste des étudiants filtrée avec une zone de critères 3. La liste des étudiants avec des sous-totaux pour les groupes de votre choix 4. Un tableau dynamique (pilote de donnée) présentant les informations croisée de votre choix Bonus : Une feuille permettant de créer le relevé de notes d'un étudiant à l'aide de la fonction RECHERCHE et/ou du Pilote de données. Le compte rendu de TP doit faire 2 pages maximum. Il contiendra quelques copies d'écran prises pendant la création des feuilles du tableau, l'explication des critères (tri, de filtrage, etc.) choisis dans chaque feuille et les observations réalisées ne figurant pas dans ce cours. Les rendus doivent se faire avant le Vendredi suivant le TP, par mail (david.rouquet@imag.fr), avec en objet : [LicPro_Pagora] TP du «date», «nom de l'étudiant»