Médiaforma

posts

Avec Word 2019, il est désormais possible d’insérer dans vos documents des icônes et des images au format SVG (Scalable Vector Graphic). Ces éléments peuvent être redimensionnés, pivotés et coloriés sans perte de qualité.

Les graphiques peuvent provenir d’une bibliothèque fournie avec Office 2019 ou de vos mémoires de masse.

Insertion d’icônes SVG à partir de la bibliothèque

Une bibliothèque d’icônes SVG est fournie avec Word. Pour y accéder, basculez sur l’onglet Insertion du ruban puis cliquez sur l’icône Icônes dans le groupe Illustrations. La boîte de dialogue Insertion d’icônes s’affiche :

Sélectionnez une catégorie dans la partie gauche de la boîte de dialogue, cliquez sur l’icône ou sur les icônes que vous voulez insérer puis cliquez sur Insérer pour les insérer dans le document. Ici, trois icônes ont été ajoutées au document. Si nécessaire, vous pouvez agir sur leurs poignées de redimensionnement pour modifier leur taille et leur orientation :

Vous pouvez également utiliser l’onglet Outils d’image/Format du ruban pour changer le contour et le remplissage des icônes, pour leur appliquer des effets, pour définir un texte de remplacement destiné aux déficients visuels, ou encore les positionner dans le document en les insérant dans un cadre :

Les couleurs appliquées sur une image SVG impactent la totalité de l’image :

Si vous souhaitez modifier la couleur d’une partie de l’image SVG, vous devez dans un premier temps la convertir en une forme. Cliquez du bouton droit sur l’image et sélectionnez Convertir en forme dans le menu contextuel. Une boîte de dialogue de confirmation s’affiche. Cliquez sur Oui :

L’image SVG n’a apparemment pas changée. Cependant, vous pouvez maintenant sélectionner individuellement chacune des parties qui la composent et agir sur leur couleur, leur bordure ou les effets qui leur sont appliqués :

Insertion d’images SVG à partir de vos mémoires de masse

Il est également possible d’insérer dans un document des images SVG qui ne font pas partie de la bibliothèque. Ouvrez l’explorateur de fichiers, basculez sur le dossier qui contient l’image SVG à insérer, puis faites-la glisser de l’explorateur au document Word :


Si vous voulez un bouton personnalisable, vous utiliserez un bouton de commande et non un bouton de formulaire.

Basculez sur l’onglet Développeur. Dans le groupe Contrôles, cliquez sur l’icône Insérer, puis sur l’icône Bouton de commande (Contrôle ActiveX) :

Dessinez le bouton sur la feuille de calcul en maintenant le bouton gauche de la souris enfoncé. Au relâchement du bouton gauche, un bouton intitulé CommandButton s’affiche.

Cliquez du bouton droit sur le bouton de commande et sélectionnez Propriétés dans le menu. La boîte de dialogue Propriétés s’affiche. Utilisez les propriétés (Name) et Caption pour respectivement donner un nom au bouton de commande (ici, DL) et choisir son libellé (ici, Date Longue) :

Sous l’onglet Développeur, dans le groupe Contrôles, cliquez sur Visualiser le code. Cette action affiche la fenêtre Microsoft Visual Basic pour Applications. Sélectionnez DL dans la première liste déroulante (1) et Click dans la seconde (3). Un code VBA s’affiche dans la partie centrale de la fenêtre. Entrez le nom de la macro (ici DateLongue) puis fermez la fenêtre Microsoft Visual Basic pour Applications :

Cliquez sur l’icône Mode Création pour quitter ce mode de fonctionnement :

Vous pouvez vérifier que le bouton de commande fonctionne en sélectionnant les cellules à mettre en forme et en cliquant sur le bouton.

Pour terminer, voyons comment personnaliser le bouton. Cliquez sur l’icône Mode Création (onglet Développeur, groupe Contrôles) pour passer en mode Création. Cliquez sur le bouton puis sur l’icône Propriétés. Vous pouvez choisir entre autres la couleur d’arrière-plan et la couleur d’écriture du bouton, l’image d’arrière-plan du bouton et son ombrage :

Une fois le bouton personnalisé, cliquez sur l’icône Mode Création (onglet Développeur, groupe Contrôles) pour pouvoir l’utiliser.

Vous en savez maintenant assez sur l’enregistreur de macros pour créer vos propres macros et les exécuter :

  • depuis la boîte de dialogue Macros;
  • avec un raccourci clavier ;
  • en cliquant sur une icône dans la barre d’outils Lancement rapide;
  • en cliquant sur une icône dans le ruban ;
  • en cliquant sur un bouton de contrôle ou un bouton de commande.

Un graphique SmartArt peut vous aider à communiquer vos idées plus efficacement qu’un simple texte. Vous pouvez rapidement convertir plusieurs paragraphes de texte, une liste à puces ou une liste numérotée en un graphique SmartArt. Sélectionnez le texte à convertir, basculez sur l’onglet Accueil du ruban, cliquez sur l’icône Convertir en graphique SmartArt dans le groupe Paragraphe et choisissez un des graphiques proposés dans la galerie :

La transformation est immédiate. Si nécessaire, vous pouvez compléter le graphique en y ajoutant des images ou du texte, ou encore le personnaliser en utilisant les onglets Création et Format du ruban.

Inversement, il est possible de convertir un graphique SmartArt en texte. Cliquez sur le graphique SmartArt pour le sélectionner, basculez sur l’onglet Outils SmartArt/Création du ruban, cliquez sur l’icône Convertir dans le groupe Rétablir et choisissez Convertir en texte dans la liste. Le graphique SmartArt est alors converti en une liste à puces.

Notez que le graphique SmartArt peut également être converti en une forme. Cliquez sur l’icône Convertir dans le groupe Rétablir et choisissez Convertir en formes dans la liste. Les différentes formes qui constituaient le graphique SmartArt sont aplaties pour donner lieu à une forme unique. Cette forme peut alors facilement être déplacée, redimensionnée ou supprimée.


Cette section va vous montrer comment insérer des données JSON dans un tableau Excel. Avant d’aller plus loin, nous allons faire deux petits apartés sur les fonctions fléchées (arrow functions) et sur la fonction JavaScript map().

Un petit rappel sur les fonctions fléchées

Ce code :

var hello = function() {

  return 'Hello World!';

}

Est équivalent à :

let hello = () => 'Hello World!';

En effet, les accolades ne sont pas nécessaires car la fonction contient une seule instruction qui effectue un return :

Allons un peu plus loin en ajoutant un paramètre à la fonction anonyme. Ce code :

var hello = function(nom) {

  return 'Hello ' + nom;

}

Est équivalent à :

let hello = (nom) => 'Hello ' + nom;

Ici encore, les accolades ne sont pas nécessaires car la fonction contient une seule instruction qui effectue un return :

Un second rappel sur la fonction JavaScript map()

Ces instructions stockent dans le tableau x[] la racine carrée de chacune des valeurs du tableau numbers[] :

var numbers = [4, 9, 16, 25];

var x = numbers.map(Math.sqrt);

La fonction map() :

  • Parcourt le tableau numbers[] sur lequel elle est appliquée.
  • Crée un tableau de même taille (ici, x[]).
  • Applique la fonction passée en argument (sqrt()) à chacun des éléments du tableau numbers[] et stocke les résultats dans le tableau x[].

En tenant compte de ce qui a été dit dans ces deux apartés, nous allons définir ce tableau dans la feuille de calcul courante à partir de données JSON :

Voici le code utilisé :

Ce code est disponible en cliquant ici

async function ajoutJSON() {

  await Excel.run(async function(context) {

    let feuille = context.workbook.worksheets.getActiveWorksheet();

    // Ajout de la ligne de titre

    let tableauJSON = feuille.tables.add("A13:D13", true);

    tableauJSON.name = "tableaujson";

    tableauJSON.getHeaderRowRange().values = [["Formation", "Nombre", "Prix", "Total"]];

    // Définition du tableau de données en JSON

    var data = [

      {

        FORMATION: "Windows 10",

        NOMBRE: "1",

        PRIX: "950",

        TOTAL: "950"

      },

      {

        FORMATION: "Office 2019",

        NOMBRE: "2",

        PRIX: "1400",

        TOTAL: "2800"

      }

    ];

    // Injection des données JSON à la suite de la ligne de titre

    var newData = data.map((item) => [item.FORMATION, item.NOMBRE, item.PRIX, item.TOTAL]);

    tableauJSON.rows.add(null, newData);

  });

}

Les premières instructions sont très classiques. La feuille courante est placée dans la variable feuille :

let feuille = context.workbook.worksheets.getActiveWorksheet();

La ligne de titre est définie des cellules A13 à D13 :

let tableauJSON = feuille.tables.add("A13:D13", true);

tableauJSON.name = "tableaujson";

tableauJSON.getHeaderRowRange().values = [["Formation", "Nombre", "Prix", "Total"]];

Les données sont alors définies dans un tableau JSON et stockées dans la variable data :

var data = [

  {

    FORMATION: "Windows 10",

    NOMBRE: "1",

    PRIX: "950",

    TOTAL: "950"

  },

  {

    FORMATION: "Office 2019",

    NOMBRE: "2",

    PRIX: "1400",

    TOTAL: "2800"

  }

];

La fonction map() passe en revue les données contenues dans le tableau data[] sur lequel elle est appliquée. Elle parse les clés FORMATION, NOMBRE, PRIX et TOTAL et stocke les nouvelles données dans le tableau newData[] :

var newData = data.map((item) => [item.FORMATION, item.NOMBRE, item.PRIX, item.TOTAL]);

Le tableau newData[] contient deux tableaux (un par ligne) :

[

    ["Windows 10", "1", "950", "950"],

    ["Office 2019", "2", "1400", "2800"]

]

C’est exactement ce qu’il faut à la fonction rows.add() pour injecter ces données à la suite de la ligne de titre (null en premier argument) :

tableauJSON.rows.add(null, newData);

La fonction ajoutJSON() est définie en tant que gestionnaire évènementiel attaché au bouton d’id ajout de l’interface :

$("#ajout").click(() => tryCatch(ajoutJSON));

Voici le code HTML de l'interface :

<button id="ajout" class="ms-Button">

    <span class="ms-Button-label">Créer un tableau avec des données JSON</span>

</button>

La zone de notification rassemble l’heure système, l’icône du centre de notification et quelques icônes qui facilitent l’accès aux applications qui s’exécutent en arrière-plan. Il est possible d’afficher ou de masquer certaines de ces icônes. Lisez l’article Bien utiliser la zone de notification pour en savoir plus. Ici, nous allons voir comment afficher toutes les icônes dans la zone de notification.

Cliquez sur Démarrer puis sur Paramètres. La fenêtre Paramètres Windows s’affiche. Cliquez sur l’icône Personnalisation. Sélectionnez l’onglet Barre des tâches et déplacez la partie droite de la fenêtre pour atteindre la section Zone de notification. Cliquez alors sur le lien Sélectionner les icônes à afficher dans la barre des tâches :

Dans la fenêtre qui s’affiche, vous pouvez choisir quelles icônes vous voulez afficher dans la zone de notification en agissant sur les interrupteurs (1). Pour afficher toutes les icônes, placez l’interrupteur Toujours afficher toutes les icônes dans la zone de notification en position Activé (2) :


Pour terminer, nous allons voir comment affecter une macro à un bouton de formulaire.

Basculez sur l’onglet Développeur. Dans le groupe Contrôles, cliquez sur l’icône Insérer, puis sur l’icône Bouton (Contrôle de formulaire) :

Dessinez le bouton sur la feuille de calcul en maintenant le bouton gauche de la souris enfoncé. Au relâchement du bouton gauche, la boîte de dialogue Affecter une macro s’affiche. Sélectionnez la macro dans la liste et cliquez sur OK :

Cliquez sur le libellé du bouton et modifiez-le :

Si nécessaire, vous pouvez modifier la taille du bouton. Cliquez dessus et agissez sur ses poignées de redimensionnement. De même, vous pouvez modifier son emplacement. Pointez-le, maintenez le bouton droit de la souris enfoncé et déplace-le à l’endroit souhaité. Au relâchement du bouton droit de la souris, sélectionnez Placer ici dans le menu.

Les boutons de formulaire sont assez peu personnalisables. Pour accéder aux options disponibles, cliquez du bouton droit sur le bouton et sélectionnez Format de contrôle dans le menu :


Le module Contacts peut être utilisé dans de nombreux domaines. Entre autres, il simplifie grandement la saisie des adresses e-mail :

  • Dans une fenêtre de composition de message, vous pouvez cliquer sur A, Cc et Cci pour remplir les champs correspondants en utilisant les informations mémorisées dans le module Contacts.
  • Dans le module Calendrier, lorsque vous définissez une nouvelle réunion, vous pouvez utiliser le bouton A pour éviter la saisie de l’adresse e-mail du destinataire.