Médiaforma

posts

Il existe de nombreuses fonctions dédiées aux chaînes de caractères dans Calc. Vous les utiliserez pour remplir des cellules à partir d’autres cellules existantes. En voici quelques-unes :

Fonction Signification
MAJUSCULE() et MINUSCULE() Version majuscule et minuscule de la chaîne passée en argument
SUBSTITUE() Remplace un texte par un autre dans une chaîne
CHERCHE() Recherche une sous-chaîne dans une chaîne
NBCAR() Nombre de caractères de la chaîne passée en argument
CONCATENER() Concatène les chaînes passées en argument

 

Pour illustrer ces fonctions, nous allons raisonner sur cette feuille de calcul :

Les colonnes E à H sont calculées à partir des colonnes A à D :

  • La colonne E est obtenue en assemblant les données de la colonne C et de la colonne D mise en majuscules.
  • La colonne F est obtenue en remplaçant la lettre « A » par la lettre « a » dans les données de la colonne A.
  • La colonne G recherche la sous-chaîne « er » dans les cellules de la colonne B. Elle affiche la position de cette sous-chaîne ou un code d’erreur si la sous-chaîne n’est pas trouvée.
  • La colonne H est une amélioration de la colonne G. Elle affiche trouvé si la sous-chaîne « er » est trouvée dans les cellules de la colonne B. Elle affiche non trouvé dans le cas contraire.

Voici les formules utilisées :

  • Cellule E2: =CONCATENER(C2; » « ;MAJUSCULE(D2))
  • Cellule F2: =SUBSTITUE(A2; »A »; »a »)
  • Cellule G2: =CHERCHE(« er »;B2)

Comme vous le voyez, un code d’erreur s’affiche dans la colonne G lorsque la chaîne « er » n’est pas trouvée dans les cellules de la colonne B. Pour améliorer le comportement de la fonction CHERCHE(), vous allez tester la valeur renvoyée par cette fonction dans la fonction ESTERR(). Si une erreur est retournée (#VALEUR!), la chaîne « non trouvé » sera affichée. Sinon, la chaîne « trouvé » sera affichée. Rien de plus simple grâce à la fonction SI(). Voici la formule utilisée pour calculer la cellule H2 :

=SI(ESTERR(CHERCHE(« er »;B2)); »non trouvé »; »trouvé »)

Pour compléter les cellules des lignes 3 à 12, il suffit de recopier tour à tour les cellules E2, F2, G2 et H2 jusqu’en E12, F12, G12 et H12.

Les mises à jour et les applications du Store ne sont pas forcément téléchargées sur les serveurs de Microsoft : si votre ordinateur est relié à un réseau local, elles peuvent être téléchargées sur un des ordinateurs du réseau. Votre ordinateur peut également être utilisé pour envoyer des mises à jour et des applications du Store à d’autres ordinateur de votre réseau local. Si votre connexion Internet est rapide, les mises à jour et les applications du Store pourront également être envoyées à d’autres ordinateurs reliés à Internet en utilisant une connexion pair-à-pair. Ce comportement par défaut peut être modifié si vous le souhaitez.

Cliquez sur Démarrer, tapez optimisation et cliquez sur Paramètres d’optimisation de la distribution, dans la partie supérieure du menu Démarrer. La boîte de dialogue des paramètres s’affiche, onglet Optimisation de la distribution sélectionné :

Selon son état, l’interrupteur Autoriser les téléchargements à partir d’autres PC (1) autorise ou interdit les téléchargements de mises à jour et d’applications du Store vers d’autres ordinateurs. Lorsqu’il est en position Marche, vous pouvez limiter les téléchargements aux ordinateurs de votre réseau local ou l’étendre aux ordinateurs connectés à Internet (2). La bande passante réservée au téléchargement des mises à jour et applications peut être limitée. Cliquez sur Options avancées (3). La boîte de dialogue Options avancées s’affiche. Sous Paramètres de téléchargement, vous pouvez choisir la bande passante de téléchargement vers votre PC en arrière-plan et en avant-plan :

Déplacez la barre de défilement verticale pour atteindre la partie inférieure de la boîte de dialogue. Sous Paramètres de chargement, vous pouvez choisir la bande passante de téléchargement depuis votre PC vers les autres PC du réseau et/ou connectés à Internet ainsi qu’une limite de téléchargement mensuelle :

Pour modifier la casse (c’est-à-dire les majuscules et les minuscules) d’un bloc de texte, commencez par le sélectionner, puis appuyez une ou plusieurs fois sur Maj + F3 pour obtenir les caractères désirés.

Attention

Comme vous pouvez le voir, après avoir appuyé trois fois sur Maj + F3, la boucle n’est pas tout à fait bouclée, puisque le paragraphe a perdu toutes les majuscules qu’il avait dans sa version originale. Pour retourner à la version originale, appuyez autant de fois que nécessaire sur Contrôle + Z ou lancez autant de fois que nécessaire la commande Annuler dans le menu Edition.

Si vous préférez, vous pouvez également lancer la commande Caractère dans le menu Format. La boîte de dialogue Caractère s’affiche. Basculez sur l’onglet Effets de caractère, choisissez la casse à appliquer à la sélection dans la liste déroulante Effets et cliquez sur OK pour appliquer la modification :

Si vous avez suivi la formation Excel 2016, vous savez qu’il est très facile de redimensionner une colonne à la largeur maximale de ses cellules en double-cliquant sur la partie droite de son en-tête :

Saviez-vous que vous pouvez redimensionner automatiquement toutes les colonnes en une seule opération ?

Cliquez à l’intersection des en-têtes de ligne et de colonne ou appuyez sur Contrôle + A pour sélectionner la totalité de la feuille de calcul :

Il vous suffit maintenant de double-cliquer dans la partie droite d’un en-tête de colonne pour redimensionner automatiquement toutes les colonnes :

Outlook 2019 peut lire vos courriers à voix haute. Vous pourrez ainsi écouter vos courriers tout en effectuant d’autres tâches.

Pour accéder à cette fonctionnalité, vous devez dans un premier temps activer la lecture à voix haute.

Basculez sur l’onglet Fichier du ruban et cliquez sur Options. La boîte de dialogue Options Outlook s’affiche. Sélectionnez l’onglet Options d’ergonomie. Sous Options d’affichage dans les applications, cochez la case Afficher la lecture à voix haute puis validez en cliquant sur OK :

Pour lire un message à voix haute, cliquez sur son en-tête (1). Basculez sur l’onglet Accueil du ruban puis cliquez sur Lecture à voix haute dans le groupe Fonction vocale (2) :

Les promises (promesses en français) sont apparues avec la version ECMAScript 6 (ES6) de JavaScript. Elles permettent de faire des opérations asynchrones en attendant un résultat dans le futur (une promesse). Ce résultat peut être un succès ou un échec.

Pour créer une nouvelle promise, vous devez instancier la classe Promise en lui passant une fonction anonyme qui a deux arguments (le second étant facultatif). Le premier paramètre est le nom de la fonction à exécuter en cas de succès. Le second est le nom de la fonction à exécuter en cas d’échec.

Premier exemple de promise

new Promise(function(resolve, reject) {  setTimeout(() => {    resolve("Promise résolue")  }, 1000);});

L’objet créé à partir de la classe Promise exécute la fonction resolve() au bout de 1000ms pour indiquer que la promise est résolue. Ici, la fonction reject() n’est jamais exécutée.

Un autre exemple avec les fonctions then() et catch()

Les fonctions then() et catch() peuvent être chaînées à l’exécution d’une promise. La fonction then() prend en argument une fonction anonyme qui peut récupérer des données passées par la promise en cas de succès. La fonction catch() prend en argument une fonction anonyme qui récupère un objet JSON qui précise la nature de l’erreur.

Voici un exemple de promise à laquelle on chaîne la fonction then() pour afficher un message lorsque la promise est résolue :

let promise = new Promise((resolve, reject) =>{

  setTimeout(() => {

    resolve('promise résolue');

  }, 3000);

});

promise.then((value) => {

  console.log(value);

});

console.log('Promise lancée mais pas encore résolue');

Le premier bloc d’instructions définit la promise et l’affecte à la variable promise.

Le deuxième bloc d’instructions lance la promise puis affiche un message lorsqu’elle est résolue.

La dernière instruction affiche un message juste après le lancement de la promise.

Voici ce qui s’affiche dans la console (le second texte s’affiche au bout de 3 secondes) :

Promise lancée mais pas encore résolue

Promise résolue

La méthode then() peut être chaînée à la promise pour simplifier le code :

let promise = new Promise((resolve, reject) =>{

  setTimeout(() => {

    resolve('promise résolue');

  }, 3000);

}).then((value) => {

  console.log(value);

});

console.log('Promise lancée mais pas encore résolue');

Un troisième exemple de code asynchrone avec une attente synchrone

A titre d’exemple, vous allez créer votre premier snippet pour tester l’utilisation des mots-clés async et await.

Dans la fenêtre Code, cliquez sur le menu (1), puis sur New Snippet (2) :

Modifiez le code TypeScript du snippet comme ceci :

$("#run").click(affichage);

async function attendre(ms) {

  let promise = new Promise((resolve) => {

    setTimeout(resolve,ms);

  });

  return promise;

}

async function affichage() {

  let compteur = 1;

  setTimeout(() => {

    ++compteur;

    console.log('Dans la fonction setTimeout() de affichage(), compteur vaut ' + compteur);

  }, 1000);

  console.log('Juste après le setTimeout de la fonction affichage(), compteur vaut ' + compteur);

  await attendre(2000);

  console.log('compteur vaut ' + compteur + ' après l\'instruction await');

}

La fonction asynchrone attendre() fait une pause de ms dans l’exécution du code. Pour cela, elle définit une promise et retourne sa fonction de callback resolve() au bout de ms millisecondes.

Au clic sur le bouton, la fonction asynchrone affichage() est exécutée.

Une variable compteur est initialisée à 1. Un timeout de 1000ms est alors déclenché. Lorsqu’il est terminé, le compteur est incrémenté et un message s’affiche dans la console (1).

L’instruction suivante affiche un message dans la console (2). Ce message apparaîtra avant le message du timeout précédent.

L’instruction suivante fait une pause de 2000ms via la fonction attendre(). Un message est alors affiché dans la console (3).

Voici le résultat de ce code :

Ce code est disponible en cliquant ici

Cet article va vous montrer comment tester si un fichier quelconque existe.

Vous utiliserez la fonction Dir(). Passez-lui le chemin complet du fichier dont vous voulez tester l’existence. Elle retournera :

  • Une chaîne vide si le fichier n’est pas trouvé.
  • Le nom du fichier (sans son dossier) si le fichier est trouvé.

Voici le code utilisé :

Dim Fichier As String

Fichier = Dir("c:\data\A lire.txt")

If Fichier <> "" Then

    MsgBox "Le fichier '" & Fichier & "' existe"

Else

    MsgBox "Le fichier n'a pas été trouvé"

End If

Et voici les boîtes de dialogue affichées selon si le fichier existe ou s’il n’existe pas :