Macro avec OpenOffice non exécutée par LibreOffice …

Bonjour,
La seule macro que j’ai réalisée fonctionne correctement avec OpenOffice, mais lorsque je l’active avec LibreOffice, j’obtiens l’alerte :

" A Scripting Framework error occurred while running the Basic script vnd.sun.star.script:Standard.Consolidation.Montants?language=Basic&location=application.

Message: The following Basic script could not be found:
library: ‘Standard’
module: ‘Consolidation’
method: ‘Montants’
location: ‘application’ "

Je suis sur MacBook.

Que dois-je faire ? Merci de me guider.

Comme le message l’indique : la macro n’est pas trouvée car se trouvant au niveau de l’application et pas dans le document.

1 Like

Merci de la traduction.

Quelle application, quel document ? Que faut-il faire ?

Vous devez depuis OpenOffice transférer votre macro au sein du document.
Explication ici : Forum OpenOffice LibreOffice NeoOffice - [Résolu][Basic] Transfert de tableau par internet - (Consulter le sujet)

Si je n’ai pas réagi plus vite, c’est que je voulais étudier LibreOffice pour mieux cerner le problème. J’ai les idées un peu moins confuses.

Compte tenu de l’alerte qui s’affiche lorsqu’on active la macro, j’ai tenté de conformer LibreOffice en conséquence. Je suis arrivé à la configuration présentée dans l’image ci-dessous, mais sans succès.

Une aide est souhaitée… avec des remerciements anticipés.

Votre interrogation montre que vous n’avez pas lu ce que j’ai posté.
L’action de récupération doit se faire depuis OpenOffice.
Relisez le lien que je donne, c’est expliqué.

cela indique que la macro doit se trouver sous
image

Gestion des bibliothèques et des modules

Je dois être obtus, mais je n’ai pas trouvé la solution dans le post “Transfert de tableau par internet”.
Dans OpenOffice le situation se présente comme suit :


En surlignant test LO.ods>Standard>Consolidation apparaissent dans la colonne de droite les mots : Montants, Titres et Performances.

Que dois-je faire, sachant que LibreOffice reste encore assez mystérieux pour moi ?

Avec mes excuses …

La macro est dans le document,
Macro = “Montants” qui est dans le module “Consolidation” dans la bibliotheque “Standard” du document.

Mais l’ordre pour exécuter la macro essaie d’exécuter la macro à partir du profil utilisateur (sur l’ordinateur), pas dans le document.

  • Comment exécutez-vous la macro?

Merci de cette réactivité.

Par un bouton.(dont je voudrais modifier la forme … mais ne sais comment faire).

Si c’est un boutton dans le fichier
Vous devez modifier l’ordre du bouton

1 - Menú > Affichage > barres d’outils > Controles de formulaire
2 - Cliquez sur l’outil “Mode Conception” pour entrer dans le mode d’ edition
3 - Cliquez sur le bouton avec le bouton droite du souris et choisisez Proprietes du control
4 - Dans Proprietes du bouton > Evenements

  • Changez l’ordre pour executer la macro qui est dans le document.

5- Sortez du mode d’edition en clicant sur l’outil “Mode Conception” de la barre d’outils

Merci, bantoniof, j’ai bien réussi à redimensionner le bouton, son activation déclenche toujours l’alerte
alerte

Que dois-je faire ?

Vous devez editer l’evenement qui lance la macro dans les Propriertes du bouton.

Normalment c’est le champ “Executer l’action”

A droite du champ cliqued sur le petit bouton avex troix points et seleccioner la macro dans le document.

Un programme chargé explique une réaction différée : pardon, bantoniof.

Résumé de la situation :slight_smile:

  • Pour modifier l’ordredu bouton, j’ai bien activé le Contrôle de formulaire (Form controls).

  • Je n’ai pas trouvé l’ooutil Mode Conception, mais l’utilisation du bouton droit sur la commande du script a bien permis d’ouvrit la fenêtre des Propriétés du control.

  • J’ai sélectionné Execute action

  • Malheureusement, lorsque j’active la commande du script, je reçois de nouveau l’alerte dont image plus haut.

Quelle est mon erreur ?

Pouvez vous publier ici le fichier qui fait l’erreur?

Pour des raisons de confidentialité, puis-je vous l’envoyer à titre personnel ? Comment ?

Le script pourrait-il être suffisant ?

Le script peut fonctionner correctement ou avoir des problèmes, mais
Le problème principal est la façon dont ont appelle à le script.

Il ne semble pas que vous nous comprenions, et sans avoir le fichier d’où vous essayez d’appeler le script, on ne peux pas savoir ce que vous faites de mal.

Si le fichier que la macro dispose de données confidentielles, ce que vous pouvez faire est de supprimer les données avant de les envoyer.

  • La macro et le bouton d’où votre flamme doit rester dans le fichier.
    Avec cela, on peut voir où se trouve le problème d’exécution, (pas le fonctionnement).

Ci-joint le fichier complet Le bouton est dans la feuille Cumul dans la colonne AF.
Bq 25.ods (237,5 Ko)

Dans l’attente de votre diagnostic …

Sélectionnez le bouton et clic droit pour afficher le dialog Propietés du bouton

  1. Clic dans l’onglet Événements
  2. Clic dans le bouton a trois point por asigner une action au evenement Executer
  3. Clic dans le bouton Macro
  4. Dans la selection du macro choice the file (dans l’exemple BQ25(1).ods)
  • Clic dans la biblioteque = Standard, Module = Consolidation et Macro = Montants
  1. Click OK

Le script a deux lignes qui donnent une erreur:
Ligne 3
Ligne 5
Vous devez effacer ou commenter (écrire REM au début de chaque ligne) les deux lignes
Avec ces lignes commentées, le script semble fonctionner.

  • Je ne comprends pas beaucoup de macros dans calc, c’est votre travail

Un malheur n’arrivant jamais seul … j’ai un autre ennui.

Lorsque j’ouvre le fichier, s’affiche l’alerte :
“Erreur lors du chargement du BASIC du document file:///Users/philippemignotte/Library/Application%20Support/LibreOffice/4/user/basic/Library1/script.xlb/:
Erreur générale.
Erreur d’entrée/sortie générale.” Est-ce important ?

D’autre part, le clic droit sur le bouton n’ouvre pas de menu alors qu’il le fait avec les cases du fichier. Un remède ?