Macro ne fonctionne pas
Résolu
Damien007
-
Damien007 -
Damien007 -
Bonjour,
Je ne connais rien à libreoffice openoffice mais je dois m'y mettre (sur libreoffice) et je dois notamment faire des macros (je suis un utilisateur modeste d'excel VBA).
j'ai regardé sur net, j'ai copié stricto sensus un code libreoffice sensé marcher mais ça ne marche pas chez moi (libreoffice Version: 6.2.8.2 (x64), windows 10). je cherche mais je ne trouve pas alors je ne suis décidé a venir demander de l'aide, d'avance merci !
j'ai l'impression qu'il me manque des extensions ou je ne sais quoi pour que ça marche (pour faire marcher les lignes de type com.sun.star....?) , voici le code copié et qui me renvoi erreur 423 (sur la ligne : dimensionsForme.Widht = 2600) quand je exécute :
merci d'avance
Je ne connais rien à libreoffice openoffice mais je dois m'y mettre (sur libreoffice) et je dois notamment faire des macros (je suis un utilisateur modeste d'excel VBA).
j'ai regardé sur net, j'ai copié stricto sensus un code libreoffice sensé marcher mais ça ne marche pas chez moi (libreoffice Version: 6.2.8.2 (x64), windows 10). je cherche mais je ne trouve pas alors je ne suis décidé a venir demander de l'aide, d'avance merci !
j'ai l'impression qu'il me manque des extensions ou je ne sais quoi pour que ça marche (pour faire marcher les lignes de type com.sun.star....?) , voici le code copié et qui me renvoi erreur 423 (sur la ligne : dimensionsForme.Widht = 2600) quand je exécute :
public Sub test01
Dim monDoc As Object
Dim lesFeuilles As Object
Dim maFeuille As Object
Dim maPage As Object
Dim maForme As Object
Dim dimensionsForme As New com.sun.star.awt.Size
Dim positionForme As New com.sun.star.awt.Point
monDoc = ThisComponent
lesFeuilles = monDoc.Sheets
maFeuille = lesFeuilles.getByName("tableau_bord")
maPage = mafeuille.DrawPage
dimensionsForme.Widht = 2600
dimensionsForme.Height = 1200
positionForme.x = 3500
positionForme.y = 3500
maForme = monDoc.createInstance("com.sun.star.drawing.EllipseShape")
maForme.Size = dimensionForme
maPage.add(maForme)
maForme.Position = positionForme
end sub
merci d'avance
Configuration: Windows / Chrome 83.0.4103.106
A voir également:
- Macro ne fonctionne pas
- Telecharger macro convertir chiffre en lettre excel - Télécharger - Tableur
- Télécharger macro convertir chiffre en lettre excel - Télécharger - Tableur
- Jitbit macro recorder - Télécharger - Confidentialité
- Macro maker - Télécharger - Divers Utilitaires
- Macro word - Guide
6 réponses
Bonjour
remplacer : dimensionsForme.Widht = 2600
par :
remplacer : maForme.Size = dimensionForm
par
remplacer : dimensionsForme.Widht = 2600
par :
dimensionsForme.Width = 2600
remplacer : maForme.Size = dimensionForm
par
maForme.Size = dimensionsForme
Bonjour,
Essaye l'exemple page 80 de ce document : https://jazz.ensil.unilim.fr/outils_info/OOo_API_intro-04.pdf
Essaye l'exemple page 80 de ce document : https://jazz.ensil.unilim.fr/outils_info/OOo_API_intro-04.pdf
tien après avoir installé open office et réouvert libreoffice, j'ai ce message à l'ouverture de libreoffice :
"libreoffice nécessite un environnement d'exécution java (JRE) 64-bit pour réaliser cette tâche. Veuillez installer un JRE puis redémarrer LibreOffice"
c'est surement ça le pb, ceci dit j'ai souvenir d'avoir vu ce message et d'avoir fait ce qui était demandé, je vais refaire et voir si le problème persiste.
EDIT : Bon j'ai réinstallé JRE, en faisant attention de choisir 64bit (j'avais surement fait 32bit qui est par défaut la première fois), je n'ai plus le message d'erreur mais par contre mes macros continuent de ne pas fonctionner
"libreoffice nécessite un environnement d'exécution java (JRE) 64-bit pour réaliser cette tâche. Veuillez installer un JRE puis redémarrer LibreOffice"
c'est surement ça le pb, ceci dit j'ai souvenir d'avoir vu ce message et d'avoir fait ce qui était demandé, je vais refaire et voir si le problème persiste.
EDIT : Bon j'ai réinstallé JRE, en faisant attention de choisir 64bit (j'avais surement fait 32bit qui est par défaut la première fois), je n'ai plus le message d'erreur mais par contre mes macros continuent de ne pas fonctionner
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
"Ne pas fonctionner" n'aidera pas ceux qui tentent de vous aider.
Il faut fournir un document intégrant la macro.
Et le plus simple est de vous adresser sur un forum spécialisé en programmation :
https://forum.openoffice.org/fr/forum/forum24-programmation-macro-basic.html
.
Il faut fournir un document intégrant la macro.
Et le plus simple est de vous adresser sur un forum spécialisé en programmation :
https://forum.openoffice.org/fr/forum/forum24-programmation-macro-basic.html
.
Bonjour,
Merci pour le lien.
Pour "ne pas fonctionner", je crois qu'il y a quand même du détail dans mes posts au delà de cette phrase..., y compris un exemple de code qui ne s’exécute pas car erreur, les messages d'erreurs...
j'ai essayé avec un document totalement vide et seulement la macro ci dessus, j'ai toujours une erreur en tentant d’exécuter la macro.
je vais tenter ma chance sur le forum en lien.
Cordialement
Merci pour le lien.
Pour "ne pas fonctionner", je crois qu'il y a quand même du détail dans mes posts au delà de cette phrase..., y compris un exemple de code qui ne s’exécute pas car erreur, les messages d'erreurs...
j'ai essayé avec un document totalement vide et seulement la macro ci dessus, j'ai toujours une erreur en tentant d’exécuter la macro.
je vais tenter ma chance sur le forum en lien.
Cordialement
Pardon j'ai peut-être oublié de préciser que j'ai aussi essayé suivant les conseils de pikaju de taper le code fournit page 80 dans un fichier vierge et cela ne fonctionne pas non plus (j'ai juste changé la page de 2 à 0 et le nom du fichier pour qu'il existe chez moi). en fait j'ai l'impression que peut importe le code, que c'est plutôt un problème d'extension, d'environnement...
dans ma macro du premier post, hormis le nom de la feuille, rien ne vient du fichier, j'ai tenté de créer une ellipse (en fait ce code vient aussi d'un ouvrage, pas de moi)
sinon je ne sais pas comment joindre un fichier à mon post. voici un lien de téléchargement pour mon fichier test
https://we.tl/t-5sUCOvfaLf
public Sub test02
Dim MonDocument As Object
Dim UnePage As Object
Dim MonImage As Object
Dim LeBitmap As Object
Dim Taille1 As New com.sun.star.awt.Size
Dim Position1 As New com.sun.star.awt.Point
Dim Proportion As Double
MonDocument = ThisComponent
UnePage = MonDocument.drawPages(0) ' page de la troisième feuille Draw
MonImage = MonDocument.createInstance("com.sun.star.drawing.GraphicObjectShape")
MonImage.GraphicURL = ConvertToURL(" C:\temp\44.jpg ")
Position1.x = 2500 ' 25 mm à droite du coin haut-gauche de la page
Position1.y = 5300 ' 53 mm plus bas que le coin haut-gauche de la page
UnePage.add(MonImage)
LeBitmap = MonImage.GraphicObjectFillBitmap
end sub
dans ma macro du premier post, hormis le nom de la feuille, rien ne vient du fichier, j'ai tenté de créer une ellipse (en fait ce code vient aussi d'un ouvrage, pas de moi)
sinon je ne sais pas comment joindre un fichier à mon post. voici un lien de téléchargement pour mon fichier test
https://we.tl/t-5sUCOvfaLf

effectivement, je pensais a un truc beaucoup plus compliqué mais là ça marche,