ONLYOFFICE Docs - Tutoriel pour apprendre comment créer et utiliser des macros

Daria Lapikhina

Les tâches complexes et répétitives que vous devez effectuer avec des données dans des documents texte, des feuilles de calcul ou des présentations peuvent être automatisées à l'aide de macros. Cela vous permettra de gagner du temps et d'effectuer certaines actions automatiquement, en évitant les erreurs humaines.

Dans ce tutoriel, nous allons voir comment créer notre propre macro dans ONLYOFFICE Docs et comment l’utiliser.

Pour réagir au contenu de cet article, un espace de dialogue vous est proposé sur le forum. Commentez

- Titre : ONLYOFFICE Docs - Tutoriel pour apprendre comment créer et utiliser des macros

- Auteur : Daria Lapikhina

- Parution : 24 décembre 2023

- Licence : Copyright ® 2023 Daria Lapikhina . Aucune reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents, images, etc. sans l'autorisation expresse de l'auteur. Sinon vous encourez selon la loi jusqu'à trois ans de prison et jusqu'à 300 000 € de dommages et intérêts.

Sommaire

- I. Qu'est-ce qu'une macro ?

- II. Macros dans ONLYOFFICE

- III. Comment fonctionne une macro dans ONLYOFFICE

- IV. Comment écrire une macro dans ONLYOFFICE

- V. Créer une macro

- VI. Conclusion

- VII. Ressources utiles

- VIII. Remerciements Developpez.com

I - Qu'est-ce qu'une macro ?

Une macro est un petit script qui facilite le travail avec différents types de documents en automatisant une certaine tâche. En d'autres termes, il s'agit d'un morceau de code de programmation qui contient un ensemble d'actions que vous pouvez exécuter aussi souvent que vous le souhaitez.

Par exemple, vous pouvez exécuter la macro correspondante pour mettre en évidence les doublons dans la zone sélectionnée de votre feuille de calcul avec des couleurs différentes.

Quelle est l'utilité pratique de cette macro ? Lorsque vous travaillez avec des données, vous pouvez exécuter en quelques secondes la macro enregistrée en cliquant sur le bouton correspondant pour mettre en évidence autant de fois que nécessaire les valeurs dupliquées, ce qui vous fera gagner des heures.

II - Macros dans ONLYOFFICE

En ce qui concerne l'automatisation des tâches, ONLYOFFICE Docs n'est pas compatible avec les macros VBA de Microsoft. Il utilise des macros JavaScript qui sont capables de réaliser les mêmes opérations de manière beaucoup plus sûre.

ONLYOFFICE utilise JavaScript pour les macros pour les raisons suivantes :

- elles sont multiplateformes. Contrairement à Visual Basic de Microsoft Office, JavaScript est un langage de programmation plus courant. Par conséquent, les macros JavaScript peuvent facilement être exécutées sur les plateformes Windows, Linux et macOS ;

- elles sont faciles à utiliser. JavaScript est souvent recommandé aux débutants et sa communauté est en pleine expansion. De nombreuses personnes choisissent JavaScript comme premier langage de programmation parce qu'il existe de nombreux tutoriels et guides détaillés sur l'internet ;

- les macros ONLYOFFICE sont plus sécurisées, car elles n'ont aucun accès au système. Le code JavaScript des macros ONLYOFFICE s'exécute dans la même fenêtre que les éditeurs. Par conséquent, les attaquants ne peuvent pas l'utiliser pour compromettre votre système, parce qu'ils n'y ont pas accès.

III - Comment fonctionne une macro dans ONLYOFFICE

Une macro ONLYOFFICE est une combinaison de la syntaxe JavaScript et des méthodes API d’ONLYOFFICE Document Builder.

ONLYOFFICE Document Builder est une bibliothèque C++ utilisée pour créer et éditer des fichiers Office Open XML ainsi que pour enregistrer des fichiers non-OOXML aux formats DOCX, XSLX, PPTX et PDF. Elle fonctionne avec l'API JavaScript.

Il existe de nombreuses méthodes de l'API ONLYOFFICE, et il est peu probable que vous utilisiez la plupart d'entre elles. Voici quelques exemples pratiques :

- la méthode SetFillColor est conçue pour changer la couleur d'arrière-plan de la plage de cellules actuelle par la couleur d'un objet couleur créé précédemment ;

- la méthode GetValue renvoie la valeur de la plage spécifiée ;

- la méthode GetSlideByIndex renvoie une diapositive à sa position dans la présentation ;

- il en existe d'autres.

Une description détaillée de toutes les méthodes de l'API ONLYOFFICE et de ce qu'elles font peut être trouvée dans la documentation officielle.

Dans ONLYOFFICE Docs, les macros peuvent être créées et supprimées grâce à un module complémentaire spécial sur la barre d'outils supérieure. Pour y accéder, ouvrez l'onglet Modules complémentaires et cliquez sur le bouton Macros.

En utilisant les boutons correspondants, vous pouvez créer de nouvelles macros et supprimer celles qui existent déjà. Vous pouvez également renommer les macros et même activer la fonction de démarrage automatique.

IV - Comment écrire une macro dans ONLYOFFICE

Pour créer votre macro, voici le mode opératoire général à suivre :

- ouvrez l'onglet Modules complémentaires et cliquez sur Macros ;

- cliquez sur Créer dans la fenêtre qui s'affiche ;

- consultez la documentation de l'API pour écrire le script ;

- rédigez le code de votre macro ;

- changez le nom de votre macro en cliquant sur le bouton Renommer ;

- lorsque vous êtes prêt, cliquez sur Exécuter pour exécuter votre code dans le document.

Pour mieux comprendre comment créer une macro dans ONLYOFFICE, nous allons en créer une à titre d'exemple.

V - Créer une macro

Nous avons un tableau et nous devons colorer les lignes alternées du tableau (les lignes impaires seront colorées en vert, les lignes paires seront colorées en rouge). Le tableau contient 200 lignes et les colonnes A à S. Cela prendrait beaucoup de temps de le faire manuellement. L'utilisation de macros est donc la meilleure solution pour ce besoin.

1. Ouvrons le tableur d'ONLYOFFICE et créons une nouvelle feuille de calcul.

2. Passons à l'onglet Modules complémentaires et sélectionnons Macros. La fenêtre des macros s'affiche.

3. Cliquons sur Créer. Vous verrez apparaître l'enveloppe de la fonction de base qui vous permettra de saisir le code nécessaire :

(function()
{
// ... votre code est ici ...
})() ;

4. Nous pouvons maintenant commencer à écrire notre code.
Consultons la documentation de Builder.API pour voir ce dont nous avons besoin pour mener à bien notre tâche :

- récupérer la feuille de calcul actuelle à l'aide de la méthode GetActiveSheet :

var oWorksheet = Api.GetActiveSheet();

- créer une boucle pour passer de la première à la dernière ligne :

for (var i = 1; i < 200; i += 2) { }

- définir deux variables : l'une pour les lignes impaires, l'autre pour les lignes paires :

var rowOdd = i, rowEven = i + 1;

- Maintenant que nous pouvons accéder aux lignes paires et impaires, colorons-les avec les couleurs appropriées. Définissez les couleurs souhaitées à l'aide de la méthode CreateColorFromRGB. Obtenez la plage de cellules dans la ligne à l'aide de la méthode GetRange et définissez la couleur pour les lignes impaires :

oWorksheet.GetRange("A" + rowOdd + ":S" + rowOdd).SetFillColor(Api.CreateColorFromRGB(138, 181, 155));

- Il en va de même pour les rangs pairs, mais avec une couleur différente :

oWorksheet.GetRange("A" + rowEven + ":S" + rowEven).SetFillColor(Api.CreateColorFromRGB(216, 227, 220));

Voici le code complet du script que nous avons obtenu :

1. (function()

2. {

3. var oWorksheet = Api.GetActiveSheet();

4. for (var i = 1; i < 200; i += 2) {

5. var rowOdd = i, rowEven = i + 1;

6. oWorksheet.GetRange("A" + rowOdd + ":S" + rowOdd).SetFillColor(Api.CreateColorFromRGB(138, 181, 155));

7. oWorksheet.GetRange("A" + rowEven + ":S" + rowEven).SetFillColor(Api.CreateColorFromRGB(216, 227, 220));

8. }

9. })();

1. Collons le code ci-dessus dans la fenêtre des macros et cliquons sur Exécuter.

Les lignes du tableau de 1 à 200 seront colorées alternativement en moins d'une seconde.

2. Changeons le nom de la macro si nécessaire en cliquant sur le bouton Renommer de la fenêtre des macros.

VI - Conclusion

La création de macros simples pour les activités quotidiennes de routine ne nécessite pas de profonde connaissance du langage JavaScript. Vous pouvez apprendre les principes de base en essayant de créer vos propres plugins.

Si vous ne souhaitez pas apprendre les bases du codage JavaScript pour créer des macros ONLYOFFICE, vous pouvez toujours utiliser des exemples de macros prêtes à l'emploi sur le site officiel et les modifier selon vos besoins.

VII - Ressources utiles

- Code source de ONLYOFFICE DocSpace

- En savoir plus sur ONLYOFFICE DocSpace

- Autres tutoriels ONLYOFFICE

VIII - Remerciements Developpez.com

Nous tenons à remercier Malick pour la mise au gabarit et escartefigue pour la relecture orthographique.