Excel : Microsoft ajoute la possibilité d'écrire des fonctions personnalisées en JavaScript
Mais également des fonctions d'apprentissage automatique

Le , par Stéphane le calme, Chroniqueur Actualités
Durant l’édition 2018 de la Build, sa conférence dédiée aux développeurs, Microsoft a fait une série d’annonces intéressantes. Parmi elles, Microsoft a annoncé le lancement de nouvelles fonctionnalités sur Excel qui devraient permettre au tableur de gagner un peu plus puissant.

Michael Saunders et Johnnie Thomas, gestionnaires de PM pour Excel, ont expliqué que les développeurs et les spécialistes des données peuvent maintenant exécuter localement des fonctions personnalisées en JavaScript ou avec les services Microsoft Azure Machine Learning pour créer leurs propres ajouts au catalogue de formules d'Excel.

Fonctions personnalisées en JavaScript

Les développeurs pouvaient déjà écrire leurs propres scripts complexes avec Visual Basic for Applications (VBA). Cependant, il y a quelques avantages à utiliser JavaScript. Nous pouvons évoquer sa capacité à se connecter facilement à des services tiers, mais également le fait que ces fonctions peuvent fonctionner sur n'importe quelle plateforme.

Les développeurs Office pourraient choisir d’écrire des fonctions personnalisées JavaScript pour plusieurs raisons, telles que:
  • effectuer des calculs d’opérations mathématiques, comme chercher à déterminer si un nombre est premier ;
  • apporter des informations sur le Web, un solde de compte bancaire par exemple ;
  • diffuser des données en temps réel, comme un cours boursier.

Dans un premier temps, Microsoft a lancé des tests de ces fonctions personnalisées au sein de son programme Office Insider. L’entreprise a dû être satisfaite des résultats puisqu’elle est disposée à étendre la fonctionnalité à un public plus large.


Fonctions d'apprentissage automatique

Grâce à son nouveau support d’Azure Machine Learning, les utilisateurs d'Excel pourront désormais utiliser les modèles d'apprentissage automatique que les data scientists, ou d’autres experts, de leur entreprise ont développés pour eux.

Les fonctions d'apprentissage automatique sont chacune basées sur un service qui calcule ou prédit des valeurs avec un modèle d'apprentissage automatique. Une fois le modèle déployé, les auteurs peuvent l'activer pour tous ceux qu'ils choisissent.

Au sein d'une entreprise, les administrateurs peuvent configurer qui a accès aux fonctions propriétaires. Ensuite, chaque fois que quelqu'un veut exécuter la fonction, il suffit de taper sur une cellule, comme on le ferait pour n’importe quelle fonction Excel. La fonction appelle un service Web en direct sur l'abonnement Azure de la société et renvoie le résultat de manière asynchrone.

Il existe de nombreux types de fonctions utiles que les développeurs peuvent activer avec Machine Learning, tels que:
  • la prévision intelligente, comme prédire la tendance des revenus futurs d'une entreprise basée sur des données de séries temporelles dans Excel ;
  • les problèmes de classification pour de nombreuses lignes Excel, comme la détection de fraude à partir de transactions par carte de crédit ;
  • du code Python personnalisé, comme une fonction d'analyse de texte dans les cellules.

Visuels Personnalisés Power BI pour les développeurs et les utilisateurs expérimentés

« Excel a permis d'établir un pont entre les utilisateurs métier et les équipes de data science pour accélérer la transformation numérique des entreprises. Grâce à la nouvelle prise en charge de Power BI Custom Visuals, les développeurs pourront créer de nouveaux types de visualisations de données dans Excel, offrant aux utilisateurs une expérience graphique beaucoup plus diversifiée, directement dans Excel », assurent les responsables.

Les visuels personnalisés permettent aux développeurs d'étendre l'ensemble de graphiques existant dans Excel et Power BI à l'aide de technologies Open Source standard, telles que JavaScript et D3. Si vous avez créé une visualisation basée sur les technologies Web et que vous vous demandez comment atteindre les millions d'utilisateurs Excel qui insèrent des graphiques tous les jours, cette fonctionnalité est faite pour vous. Il en va de même si vous êtes un développeur de Power BI qui a déjà créé des visuels personnalisés et que vous souhaitez que votre visuel atteigne un public beaucoup plus large. Étant donné que la même technologie alimente la fonctionnalité Custom Visuals dans les deux produits, vous pouvez alors faire votre visuel une fois et le déployer sur les deux plateformes (Excel et Power BI).


Il faut également noter qu’Excel va embarquer Flow, permettant aux utilisateurs d'envoyer des données directement à partir d'une feuille de calcul vers une gamme de services.

Grâce à cette intégration, les utilisateurs peuvent créer, gérer et, plus important encore, exécuter des flux de travail automatisés sur des données tabulaires Excel. Via Flow, les utilisateurs pourront envoyer des données à partir de leurs feuilles de calcul hébergées dans SharePoint et OneDrive for Business à un large éventail de services tels que Teams, Dynamics 365, Visual Studio en ligne, Twitter, etc.

Pour Rob Howard, le directeur de Microsoft Office 365 Ecosystem Marketing, la combinaison de ces nouvelles fonctionnalités permet essentiellement aux développeurs d'apporter leurs propres applications de ligne de service à Excel.

Source : Microsoft

Et vous ?

Quelles sont les fonctionnalités qui vous intéressent le plus ? Pourquoi ?
Que pensez-vous de l'ajout du support des fonctions personnalisées en JavaScript ? Quelles en sont les implications pour la sécurité des utilisateurs ?
JavaScript est-il susceptible de remplacer les macros comme vecteur massue d'infection sur Excel ?

Voir aussi :

Apprendre la programmation en VBA pour Excel par la pratique - Cinquième partie : protéger vos classeurs sensibles, un tutoriel de Laurent OTT
Microsoft annonce la fin du support de Word, Excel et PowerPoint Viewer et recommande les solutions accessibles via Windows 10 et Office 365
Pensez-vous que VBA n'est pas un langage professionnel ? Un développeur s'essaie à créer une application de discussion de groupe avec Excel et VBA


Vous avez aimé cette actualité ? Alors partagez-la avec vos amis en cliquant sur les boutons ci-dessous :


 Poster une réponse Signaler un problème

Avatar de MaximeCh MaximeCh - Membre averti https://www.developpez.com
le 08/05/2018 à 17:53
Merde, les méchants risquent de donner un sacré coup de jeune à leur programme pourri, faut au moins leur reconnaître ça.
Moi qui cherchais à rendre compatibles tous les objets d'excel avec git, ça va prendre plus de temps que prévu
Avatar de Qwazerty Qwazerty - Expert éminent https://www.developpez.com
le 09/05/2018 à 18:16
Salut

Du moment qu'ils ne suppriment pas VBE, ils peuvent bien faire ce qu'ils veulent

++
Qwaz
Avatar de CoderInTheDark CoderInTheDark - Membre expérimenté https://www.developpez.com
le 10/05/2018 à 12:49
Comme JavaScript dispose d'une plus grande base de développeur que VBA, ça va enrichir l'écosystème.
Mais on aura sûrement aussi une nouvelle génération de malware JavasScript sous Excel.

Ce qui m'intéresse c'est la possibilité de se connecter plus facilement à des solutions tierces.
Moi qui a une formation en comptabilité gestion et une autre en infrmatique
Je pense à la direction financière, les comptables et le contrôle de gestion, qui utilisent massivement Excel.
Et pour qui 64000 lignes ce n'est pas assez.

On pourra créer des outils plus personnalisés pour se connecter aux ERP
Avatar de unparia unparia - Expert éminent sénior https://www.developpez.com
le 10/05/2018 à 12:52
Bonjour
Code : Sélectionner tout
Mais on aura sûrement aussi une nouvelle génération de malware JavasScript sous Excel.
Je le pense également.
Avatar de Pierre Fauconnier Pierre Fauconnier - Responsable Office & Excel https://www.developpez.com
le 10/05/2018 à 14:52
Citation Envoyé par CoderInTheDark Voir le message
Comme JavaScript dispose d'une plus grande base de développeur que VBA, ça va enrichir l'écosystème.
Mais on aura sûrement aussi une nouvelle génération de malware JavasScript sous Excel.

Ce qui m'intéresse c'est la possibilité de se connecter plus facilement à des solutions tierces.
Moi qui a une formation en comptabilité gestion et une autre en infrmatique
Je pense à la direction financière, les comptables et le contrôle de gestion, qui utilisent massivement Excel.
C'est vrai que cela va étendre la communauté des développeurs, mais hélas aussi des "mauvais développeurs" qui vont pondre en Javascript les mêmes horreurs qu'en VBA

Citation Envoyé par CoderInTheDark Voir le message

Et pour qui 64000 lignes ce n'est pas assez.
Ca fait quinze ans qu'on est passé à 1 048 576 lignes sous Excel, et que les outils POWER peuvent en utiliser encore plus.

Citation Envoyé par CoderInTheDark Voir le message
On pourra créer des outils plus personnalisés pour se connecter aux ERP
Pourquoi pourrait-on le faire plus facilement en Javascript qu'en VBA?
Avatar de mrjuls mrjuls - Membre à l'essai https://www.developpez.com
le 11/05/2018 à 20:32
J'ai hâte de voir ce que ça va donner en terme de visualisation de données !
Avatar de Pierre Fauconnier Pierre Fauconnier - Responsable Office & Excel https://www.developpez.com
le 11/05/2018 à 21:16
Citation Envoyé par mrjuls Voir le message
J'ai hâte de voir ce que ça va donner en terme de visualisation de données !
Il y aura peut-être des transferts (semi)automatiques de et vers json.
Avatar de Pierre Fauconnier Pierre Fauconnier - Responsable Office & Excel https://www.developpez.com
le 11/05/2018 à 21:18
Salut Qwaz

Citation Envoyé par Qwazerty Voir le message
Salut

Du moment qu'ils ne suppriment pas VBE, ils peuvent bien faire ce qu'ils veulent

++
Qwaz
Je pense qu'il n'y a pas de danger de ce côté-là. Par contre, le vba ne sera probablement pas maintenu au delà des ajustements obligatoires. Mais le modèle objet Excel (le plus mature de la suite Office, je pense), évoluera avec les nouveaux outils qui sont/seront mis à disposition (Power Query, ...) et ce modèle objet sera, j'imagine, disponible tant pour VBA que pour Javascript.

Avatar de Qwazerty Qwazerty - Expert éminent https://www.developpez.com
le 12/05/2018 à 7:43
Bonjour Pierre

Citation Envoyé par Pierre Fauconnier Voir le message
Salut Qwaz

Je pense qu'il n'y a pas de danger de ce côté-là. Par contre, le vba ne sera probablement pas maintenu au delà des ajustements obligatoires. Mais le modèle objet Excel (le plus mature de la suite Office, je pense), évoluera avec les nouveaux outils qui sont/seront mis à disposition (Power Query, ...) et ce modèle objet sera, j'imagine, disponible tant pour VBA que pour Javascript.

Espérons en effet que ça puisse apporter d'autres outils à VBA, il va falloir trouver des rédacteurs Pierre
Après, j'avoue ne pas trop avoir la portée de ce que ça représente, je connais très peu JS. Je sais juste qu'il y a une grosse communauté et beaucoup d'applets déjà disponibles.
De plus, je suppose qu'ils n'intégreront ça que dans les dernières versions, qui seront, j'imagine, des versions en ligne. Je vais sans doute mettre un peu de temps à migrer vers ce type de produits en ligne facturés à l'année...

Quoiqu'ils fassent, ils seront bien obligés d'assurer, à minima, une compatibilité avec ce qui est existant afin qu'on puisse utiliser et maintenir les fichiers déjà en activité.
Il y a bien trop d'utilisateurs VBA aujourd'hui qui ont créé des "applications", y compris et surtout dans des entreprises. Sans compter les millier de tuto sur DVP!
Remettre en cause tout ce travail ne serait pas efficient et pas très bon pour l'image de M$.

Bon weekend
Qwaz
Avatar de Soraya9 Soraya9 - Nouveau Candidat au Club https://www.developpez.com
le 12/05/2018 à 16:58
Moi je trouve que toute évolution ou ajout est intéressante. Il faut savoir en profiter mais aussi il faut savoir se protéger de ses possibles failles.
Contacter le responsable de la rubrique Accueil