Étiquette : Macro

[SÉCURITÉ] Méfiez-vous des fichiers au format XLS !

[SÉCURITÉ] Méfiez-vous des fichiers au format XLS !

Se méfier des fichiers au format xls ? Comment est-ce possible ? Pourquoi se méfier des fichiers Excel ? Les fichiers dont l’extension se termine par .xls sont en effet des fichiers Excel. Cela fait des années que cette extension est connue de tous. Pour quelle raison vous interpeller avec cette alerte soudaine ?

En connaissant les menaces numériques qui rôdent… les faiblesses de notre propre cerveau face à des hackers… Et je vous assure que les hackers s’intéressent à vous

Prenez votre café en main et échangez quelques minutes de votre temps contre le contenu de ce post. Vous comprendrez l’extension .xls et surtout, le danger que vous courez avec les fichiers .xls.

Quelles différences entre les formats XLS, XLSX, XLSM ?

L’ancien format XLS

Les fichiers .xls sont au format Excel 2003. Ils contiennent toutes les fonctionnalités permises à cette version-là. Il faut savoir qu’à cette époque, les macros Excel n’étaient pas considérées comme une menace, mais uniquement comme une fonctionnalité standard. Je reviendrai un peu plus loin sur cette source de menace que sont les macros.

L’actuel format XLSX

Avec Excel 2007, Microsoft a réalisé une mise à jour majeure de son format interne de fichier. C’est un peu comme si vous changiez le moteur de votre véhicule essence en véhicule électrique. Il faudrait plus qu’un article pour vous décrire le nombre de changements opérés.

Toutefois, certains d’entre eux méritent qu’on s’y attarde.

Premier changement majeur des fichiers .xlsx

Les fichiers .xlsx ne peuvent plus contenir des macros exécutables (dit contenus “actifs”). Ce ne sont que des contenus passifs : des formules, du texte, des mises en forme, des paramètres, mais pas de code exécutable.

Deuxième changement majeur des fichiers .xlsx

Le contenu d’un fichier .xlsx est désormais un standard international (ISO 29500-1:2008-2016). Autrement dit, il n’est pas la propriété de Microsoft (d’autres logiciels peuvent fabriquer des fichiers xlsx et les lire sans payer de royalties à Microsoft). Petite cerise sur le gâteau, il est possible d’extraire très facilement du contenu de ces fichiers (en particulier les images).

Troisième changement majeur des fichiers .xlsx

Le format interne des fichiers a été simplifié et optimisé. Les fichiers sont moins volumineux en .xlsx qu’en .xls. Grâce à cette optimisation, les fichiers peuvent désormais contenir bien plus de cellules en lignes et en colonnes ! Le dernier X de l’extension y fait d’ailleurs référence. Le format interne utilise désormais le format dit XML (eXtensible Markup Language).

Le « nouveau » format XLSM

Si les macros ont été retirées du format de fichier “standard”, il fallait bien les mettre à un endroit. Le M final signifie “avec macros”. Les macros sont des morceaux de programme qui peuvent être embarqués avec vos fichiers Office. Il est ainsi possible d’automatiser certaines activités et de créer des programmes entiers. Personnellement, j’ai mon avis sur la question des macros dans Excel.

Toutefois, en connaissant les menaces numériques qui rôdent… les faiblesses de notre propre cerveau face à des hackers… je ne peux que vous recommander de prévenir vos contacts avant de leur envoyer des fichiers avec des macros !

Et je vous assure que les hackers s’intéressent à vous

À quoi sert une extension de fichier ?

Tous vos fichiers disposent d’une extension de fichier. Ce sont les quelques lettres qui se trouvent après le point du nom du fichier (.xls, .xlsx, .xlsm, .xlst pour les fichiers Excel). Ces extensions ont plusieurs utilités.

L’extension du fichier pour votre système d’exploitation

Votre ordinateur, votre tablette et votre smartphone utilisent tous un système d’exploitation. Cela peut être Windows, MacOS, Android, Linux ou bien d’autres variantes (ChromeOS, RedHat, Ubuntu, etc.). On parlera du SE, Système d’Exploitation ou sa version anglophone OS pour Operating System.

L’OS dispose d’une table de correspondances entre chaque extension qu’il connaît et chaque programme qu’il connaît. Ainsi, les fichiers .xls sont associés à Excel. Windows sait qu’il doit ouvrir Excel et lui transmettre le fichier .xls sur lequel vous avez double-cliqué.

Avec Windows 10, voici un extrait de ce que l’on peut trouver pour Excel :

Liste des extensions de fichiers Excel - XLS

Et pour d’autres extensions :

Liste des extensions de fichiers

L’extension du fichier pour l’application

Une fois que l’OS a ouvert l’application associée et lui a transmis le fichier de contenu (votre fichier .xls par exemple) il a terminé son travail. C’est désormais à l’application de travailler.

L’extension va donner des instructions supplémentaires à une application. Elle va lui indiquer en particulier son format interne. Par exemple, le format .xls indique “Feuille de calcul Microsoft Excel 97-2003”. C’est un format qui a fait son temps !

Alors, pourquoi se méfier des fichiers au format xls ?

Je vous le résume ici : un fichier xls est un fichier utilisant un format qui a plus de 20 ans, qui a été conçu avant 1997 ! Internet n’était pas ce qu’il est aujourd’hui et les attaques informatiques n’étaient pas aussi répandues qu’actuellement ! Les fichiers .xls se présentent comme de simples fichiers Excel et peuvent contenir des macros, c’est-à-dire des programmes qui peuvent compromettre tout votre ordinateur.

Si on vous envoie, ou que vous envoyez des fichiers en .xls, c’est comme envoyer le message suivant :

  • Je n’utilise que des vieux fichiers qui ont entre 15 et 20 ans minimum.
  • Le fichier contient peut-être un virus, à toi de voir si tu veux jouer avec moi.
  • Je n’ai pas compris que c’est dangereux.

Vous l’aurez compris, ne m’envoyez jamais de fichier .xls…

Post-scriptum

Vous vous en douterez peut-être, mais autant être explicite. Ce qui est écrit ici pour les fichiers Excel, l’est tout autant pour les fichiers Word et PowerPoint.

La même histoire a été écrite pour les fichiers Word avec les extensions .doc, .docx et .docm. Idem pour PowerPoint avec les formats .ppt, .pptx et .pptm !

Si vous avez trouvé que le temps de votre café a été bien employé, je vous remercie de me le dire dans les commentaires. D’ailleurs, si cela n’a pas été le cas, faites-le moi savoir pour que je me rattrape !

Comment changer la langue de PowerPoint de TOUTES les slides ?

Comment changer la langue de PowerPoint de TOUTES les slides ?

Changer la langue sur PowerPoint devrait être simple. Sur toutes les autres applications de la suite Office, changer la langue peut être réalisé avec quelques clics. Or, sur PowerPoint, changer la langue selon le même protocole ne fonctionnera pas comme prévu. Alors que je défends l’utilisation d’une suite Office sans VBA, là, c’est un cas de force majeure.

Dans cet article, je vous explique un peu du pourquoi, mais surtout, je vous donne les moyens de changer la langue de PowerPoint pour de bon ! Vous pouvez soit suivre le pas à pas que je vous propose, soit directement vous rendre en bas de la page où se trouve un fichier PowerPoint avec le code déjà embarqué.

Pourquoi changer la langue de PowerPoint est si compliqué ?

Une des raisons principales vient du fameux « copier-coller ». Lors de l’utilisation de la simple combinaison Ctrl+C puis Ctrl+V, on ne copie pas uniquement du texte, surtout dans PowerPoint. On copie les styles, on copie des objets avec des spécificités de mise en forme.

Lorsqu’on copie des slides d’une présentation A vers une présentation B, on copie toutes les mises en pages disponibles dans le masque des diapositives de la présentation A vers la présentation B. On copie également les notes et les masques de notes, etc.

Et là, un bouton quelque part qui nous donnerait le choix de conserver la langue d’origine ou de définir la bonne langue cible serait le bienvenu ! Si quelqu’un chez Microsoft voit ce post, merci de relayer !

Vous pouvez voir sur votre présentation si des slides ont été importées depuis une autre présentation en opérant un clic-droit sur une des slides miniatures à gauche :

Changer langue PowerPoint - Mises en pages copiées
Changer langue PowerPoint – Mises en pages copiées

Changer la langue de PowerPoint selon Microsoft

Si vous êtes ici, c’est que vous avez certainement déjà essayé la manière officielle présentée par Microsoft, et cela n’a pas fonctionné… n’est-ce pas ? Ci-dessous le contenu en italique qui se trouve sur le site de Microsoft.

Modification et vérification

  1. Dans n’importe quelle application, sélectionnez Fichier > Options > Langue.
  2. Si votre langue figure déjà parmi les langues d’édition, cliquez sur Définir par défaut. Sinon, sélectionnez la langue dans la liste Ajouter d’autres langues d’édition, puis cliquez sur le bouton Ajouter. La nouvelle langue apparaît dans la liste des langues d’édition.

Si l’option Disposition du clavier est Activée, tout est prêt pour la modification. Si elle est Non activée dans la colonne Disposition du clavier, procédez comme suit pour l’activer :

  1. Cliquez sur le lien Non activé.
  2. Dans la boîte de dialogue Ajouter des langues, cliquez sur Ajouter une langue, sélectionnez votre langue dans la liste, puis cliquez sur Ajouter.
  3. Fermez la boîte de dialogue Ajouter des langues. La langue doit apparaître avec la mention Activé sous Disposition de clavier dans la section Choisir les langues d’édition.

Sous Vérification, si votre langue est affichée comme Installée, vous pouvez passer à l’étape suivante. Sinon, cliquez sur Non installée. Office vous conduira à une page à partir de laquelle vous pourrez télécharger le pack d’accessoires linguistiques nécessaire pour cette langue. Suivez les instructions de cette page pour télécharger et installer le pack, puis revenez à la boîte de dialogue Préférences linguistiques d’Office pour confirmer qu’il est désormais installé.

Est-ce que cela a fonctionné avec vous ? Pour moi et nombreux autres, non…

Comment peut-on RÉELLEMENT changer la langue de PowerPoint ?

Alors que je ne suis pas du tout un fan des macros (et je m’explique dans cet article Macro or not Macro ? VBA or not VBA ?), il n’y a à ce jour aucun autre moyen que de passer par de la programmation dans PowerPoint.

J’ai récupéré des morceaux de code qui se trouvaient dans différents forums et y ait amené une touche personnelle pour l’enrichir et surtout la compléter !

Par le passé, j’avais déjà mis une première version qui était quasi complète. Dernièrement, je l’ai mise à jour. Ainsi. la dernière version de la macro convertit désormais tous les objets ! Si vous découvrez que certains textes de certains objets n’ont pas vu leur langue changer dans PowerPoint, surtout signalez-le moi en commentaire de cet article ! Je m’engage à essayer d’y pallier.

Vous êtes pressé de changer la langue de votre présentation PowerPoint ?

Pas de problème, je vous propose de télécharger directement le fichier « Change Language.pptm » depuis mon site.

Je me dois de vous rappeler que ce fichier contient une macro destinée à changer la langue de tous les objets d’une présentation PowerPoint. Il est hébergé sur le site https://exceller-avec-la-bureautique.com. Et dans la mesure du possible, le site est protégé contre tout acte malveillant. Toutefois, aucune technologie ne peut à 100% garantir l’intégrité du présent fichier.
En activant le contenu actif, vous permettez à un programme de s’exécuter sur votre ordinateur. Le site https://exceller-avec-la-bureautique.com ne saurait être tenu responsable des conséquences liées à cette exécution. Pour toute question, n’hésitez pas à me contacter à travers la page de contact du site : https://exceller-avec-la-bureautique.com/contact/.

>>Passer directement à l’étape 4 !

Sinon, suivez les étapes ci-dessous :

Étape 1 : Téléchargez ces fichiers sur votre ordinateur

Voici les fichiers à intégrer :

Enregistrez-les sur votre ordinateur à l’aide d’un clic droit, puis “Enregistrer la cible du lien sous…”.

Étape 2 : Activer le menu “Développeur”

Pour cela, cliquez sur le bouton droit sur l’un des en-têtes du menu de PowerPoint, puis “Personnaliser le ruban…”.

PowerPoint - Personnaliser le ruban

Ensuite, il suffit de cocher le menu “Développeur”.

PowerPoint - Activer le menu developpeur

Étape 3 : Importer les fichiers de code dans PowerPoint

Sélectionnez le ruban Développeur, puis cliquez sur la commande « Visual Basic ».

Ensuite, depuis VBAProject, faites un clic droit puis “Importer un fichier..”, faites ceci pour les deux fichiers “DefineLangForm.frm” et “Module1.bas” :

PowerPoint - Changer Langue - Importer un fichier VBA

Le fichier DefaineLangForm.frx sera importé avec le fichier “.frm” autmatiquement.

Vous aurez donc cet affichage :

PowerPoint - Fichiers VBA importes

Étape 4 : Exécuter la macro de changement de langue de PowerPoint

Vous pouvez alors fermer la fenêtre “Microsoft Visual Basic pour Application” et exécuter la macro permettant de changer la langue pour la présentation PowerPoint courante.

PowerPoint - Changer Langue - Executer macro ChangeLang

La fenêtre suivante s’affiche et vous pouvez choisir la langue cible en cliquant sur “Set language” :

PowerPoint - Changer Langue - VBA ChangeLang

Ma recommandation pour changer la langue de vos futures présentations PowerPoint

Sauvegardez cette macro permettant de changer la langue dans un fichier PowerPoint vide (au format pptm – le ‘m’ final indique que le fichier contient une macro).

Ensuite, vous pouvez la réutiliser pour les autres présentations, à la demande, grâce à l’astuce suivante.

Étape n°1 : Ouvrez vos deux présentations en même temps

Les macros partout, c’est pas bien ! Pourquoi, je l’explique dans l’article “VBA or not VBA ? Macro or not Macro ?”. Et je le développe ce thème avec l’article de pourquoi il faut se méfier des fichiers XLS.

Il vous faut donc trouver une solution pour ne pas convertir toutes vos présentations pptx en pptm (PowerPoint avec macro).

Il faut pour cela ouvrir d’une part votre présentation PowerPoint qui a la macro de changement de langue et d’autre part, celle dont vous souhaitez changer la langue.

Étape n°2 : Exécuter la macro de changement de langue

Lorsque les deux fichiers sont ouverts, on peut tout à fait exécuter les macros de l’une sur l’autre présentation !

Pour cela, dans la fenêtre d’exécution des macros, il faut utiliser le discret menu suivant :

PowerPoint - Changer Langue - Source de la macro

Ainsi, vous pourrez utiliser la macro présente dans un fichier pour l’exécuter dans l’autre. Dans mon cas, la macro est dans “Présentation1” et depuis “Présentation2” je peux l’exécuter.

Avez-vous pu changer la langue de votre PowerPoint ?

En échange de vous avoir enfin sauvé de cette galère, accepteriez-vous de me donner un petit commentaire sur cet article ? Merci d’avance !

Macro Excel or not Macro ? VBA or not VBA ?

Macro Excel or not Macro ? VBA or not VBA ?

Dois-je utiliser les macros Excel ? Qu’est-ce que le VBA ? Ces deux termes (VBA et Macro) sont ont en réalité une forte relation entre elles. Les macros sont des morceaux de programme qui peuvent être ajoutés par vos soins. Ces bouts de programmes sont écrits dans un langage : le VBA – Visual Basic for Applications.

A quoi sert le VBA ? Est-ce une macro Excel ?

Qu’est-ce que le VBA ?

VBA signifie “Visual Basic for Application”. C’est un langage de programmation allégé. La version complète étant le VB.Net.

Le VBA permet d’automatiser toutes les actions que vous faites manuellement au sein des applications Office.

Prenons un exemple. Tous les mois, vous recevez des données dans plusieurs fichiers Excel différents. Puis, vous les fusionnez en suivant toujours les mêmes étapes de nettoyage des données.

Dans cette situation, il serait intéressant d’enregistrer la suite des actions que vous réalisez afin de pouvoir les reproduire automatiquement. C’est exactement à cela que sert le VBA. Pour être plus précis encore, le terme Macro désigne la fonction qui a été enregistrée et qui pourra être reproduite. Le VBA désigne le langage de programmation qui permet d’écrire les fonctions.

Commence-t-on par une macro Excel ou le VBA ?

Pour les plus rôdés d’entre vous, la réponse est « peu importe ». Pour les autres, je vous recommande de débuter avec la fonction d’enregistrement des actions (“enregistrer une macro” dans Word et Excel).

Pour accéder à cette fonction, il faut préalablement activer le ruban “Développeur”. Un clic droit sur le menu Accueil puis “Personnaliser le ruban” (idem dans Word, Excel, PowerPoint, Outlook – Fonction inexistante dans OneNote).

Macro excel - Personnaliser le ruban

Puis cochez la case du menu “Développeur” pour l’afficher :

Personnaliser le ruban - Afficher le ruban Developpeur

Vous aurez ensuite la possibilité d’accéder à la fonction “Enregistrer une macro” (uniquement Word et Excel). Pour les autres logiciels, pas d’enregistreur des actions manuelles ; il vous faudra écrire le code vous-même.

Macro excel - Menu developpeur - Enregistrement des macros

Et si cela ne fonctionne pas comme prévu ?

C’est à ce moment qu’il faut souvent passer par la case “Visual Basic” ou encore “Macros” >> “Editer” pour arriver dans le code qui a été produit automatiquement et le corriger manuellement.

Donc le VBA n’est là que pour automatiser des actions manuelles ?

Il serait totalement injuste de s’arrêter à cela ! En effet, à partir du moment où il est possible d’accéder à un langage de programmation, on peut faire bien plus que cela.

Il devient possible d’ajouter des composants tels que des boutons, des menus déroulants ou encore des nouvelles fenêtres pour interagir avec l’utilisateur… On rentre totalement dans le développement logiciel. On peut presque tout faire ! A condition d’apprendre à faire du développement.

Bon nombre de sites se sont spécialisés pour développer des applications complètes avec Excel en particulier.

Les feuilles de calcul sont utilisées pour sauvegarder les données et le reste n’est qu’une série d’interface avec des menus déroulants, des boutons, des listes qui ont été ajoutés afin de mettre à jour les données. Comme n’importe quelle application qui utiliserait une base de données.

Alors pour ou contre le VBA ?

Je ne tournerai pas autour du pot. Je suis personnellement un véritable puriste d’Excel, Word, etc. Devoir utiliser une macro Excel, c’est comme flirter avec l’ennemi…

Le purisme – Une macro Excel tu n’utiliseras point

Pourquoi ? Pourquoi être un puriste lorsque tant de possibilités s’ouvrent à nous ? De nombreuses raisons se bousculent à la porte pour justifier cela, faisons le tour de chacune d’elles.

Comme les macros sont surtout répandues dans l’utilisation d’Excel, je vais me focaliser sur l’utilisation de la macro Excel uniquement.

La première raison : la richesse d’Excel

Tout au long de ma carrière, j’ai pu constater qu’Excel est certainement le plus beau produit que je connaisse à ce jour. Je n’ai pas trouvé un problème qui ne puisse être résolu avec l’ensemble des fonctionnalités (hors macros et VBA) déjà disponibles dans Excel.

Même s’il m’a parfois été nécessaire de réfléchirlonguement et tourner le problème dans tous les sens, avant de finir par trouver un moyen de passer mon chemin en ayant évité le pire (= les macros).

La deuxième raison : la tranquillité de transmettre les fichiers

Eh oui, qui dit Macro, dit programmation, dit “Je peux tout faire” mais aussi “Faire n’importe quoi”. Comprenez, je peux programmer des actions malveillantes ! Et ce, de bonne foi, ou de mauvaise foi.

Par exemple, avec les macros, on peut modifier des fichiers qui se trouvent sur notre ordinateur, mais aussi sur les dossiers partagés de mon entreprise. Je peux interagir avec toutes les fonctions de mon ordinateur, mais aussi avec les équipements connectés à mon ordinateur.

C’est pour cette raison que dans les entreprises, les macros sont naturellement bloquées par défaut. Et elles peuvent être bloquées de différentes manières : interdiction de les exécuter ou interdiction de les transmettre par mail (quand je vous parlais de la peste…! Winking smile).

Depuis la version 2007, Microsoft a adopté des formats de fichiers distinctifs pour savoir si un fichier est porteur ou non d’une macro. On retrouvera la lettre “m” à la fin de l’extension “.xlsm », “.docm”, “.pptm”.

La troisième raison : si je ne peux pas le faire avec les fonctions standards, c’est que ce n’est pas le bon produit !

Pourquoi vouloir développer une application avec un langage qui est limité (VBA et non VB.Net !) ? Si j’ai besoin d’une application, alors autant en développer une ! J’aurai de toute façon besoin des mêmes compétences, mais au moins je ne serai pas limité par les fonctionnalités du langage à disposition.

Mais mes données sont dans Excel/Word/…, alors c’est plus simple d’interagir avec, non ?

Eh bien non ! Depuis 2008, le format OpenXML (format qui compose les fichiers Office) est une norme internationale. C’est à dire qu’on peut accéder au contenu sans utiliser les produits de Microsoft. Et pas seulement y accéder… On peut aussi créer, modifier des documents Office sans obligation de passer par les produits de Microsoft.

N’importe quel langage de programmation me permet alors d’accéder, comme mes macros, au contenu des fichiers Office, de les modifier, etc. Et surtout : les fichiers restent “propres”, sans macros, sans risque et sont donc transmissibles partout.

La quatrième raison : la recrudescence des virus dans les macros

Les pirates informatiques l’ont bien compris : les macros sont des applications qui passent plus facilement les barrières des entreprises ! Alors ils programment leur virus avec et les transmettent aux entreprises et aux particuliers. Le mot macro devient synonyme de risque.

Il n’y a pas de règles sans exception… Une petite macro Excel de temps en temps…

Pour une utilisation limitée, personnelle, très spécifique ou si vous savez qu’il n’y a pas d’autres solutions, alors on peut utiliser une petite macro Excel, évidemment. L’un de mes articles en fera même la démonstration pour un cas non résolu : le changement de la langue dans une présentation PowerPoint. Je n’ai pas trouvé d’autre solution que de vous proposer d’utiliser une macro !

>