Faire une Macro

Résolu/Fermé
valttt Messages postés 285 Date d'inscription mercredi 7 mars 2012 Statut Membre Dernière intervention 14 janvier 2025 - Modifié par valttt le 29/06/2016 à 18:30
valttt Messages postés 285 Date d'inscription mercredi 7 mars 2012 Statut Membre Dernière intervention 14 janvier 2025 - 30 juin 2016 à 21:05
Bonjour,

Pourrais ton me donner la marche à suivre pas à pas pour mettre un code Basic libreOffice Calc (que je possède déjà) de façon à ce que ce code (macro) s'exécute automatiquement.
Pardonnez moi si je n'utilise pas le bon jargon...

Merci pour votre aide

A voir également:

4 réponses

shunesburg69 Messages postés 1057 Date d'inscription vendredi 23 mars 2007 Statut Membre Dernière intervention 26 février 2020 215
Modifié par shunesburg69 le 29/06/2016 à 20:56
Pour créer une macro:
- Outils > Macros > Gérer les macros > LibreOffice Basic
- Tu cliques sur la dernière icône qui est suivi du nom de ton fichier
- Sur la droite tu cliques sur le bouton "Nouveau"
- Tu donnes un nom à la macro
- Une fenêtre va s'ouvrir et c'est dedans que tu dois copier le code, entre "Sub Main" et "End Sub".

Comme LibreOffice, Apache OpenOffice est un fork d'OpenOffice.org
0
valttt Messages postés 285 Date d'inscription mercredi 7 mars 2012 Statut Membre Dernière intervention 14 janvier 2025 15
29 juin 2016 à 21:25
Bonsoir et merci beaucoup pour ta réponse. Je reviens demain après avoir fais les essais.
Merci encore et bonne soirée...
0
shunesburg69 Messages postés 1057 Date d'inscription vendredi 23 mars 2007 Statut Membre Dernière intervention 26 février 2020 215
30 juin 2016 à 01:58
De rien.
0
valttt Messages postés 285 Date d'inscription mercredi 7 mars 2012 Statut Membre Dernière intervention 14 janvier 2025 15
30 juin 2016 à 14:15
Bonjour à toutes et tous,

J'ai fait la manip, mais cela ne fonctionne pas.
Je m'explique:

1) Mon code est du VBA (venant d'Excel), ce qui explique que cela ne fonctionne pas, forcément !!!
2) Lors de l'enregistrement de mon fichier Excel au format ODS, il à importé ma macro VBA.

Résultat:
1) Comment fait-on pour supprimer l'ancienne macro ?
2) Comment modifier mon code VBA au Basic LibreOffice ?

Pour info, le voilà:
ption Explicit
Private Sub Workbook_Open()
Range("E12") = Range("E12") + 1
ActiveWorkbook.Save
End Sub

Private Sub Workbook_BeforeClose(Cancel As Boolean)
Dim Chemin As String, Numéro_facture As Integer

Chemin = ActiveWorkbook.Path
Numéro_facture = Range("E12")
Application.DisplayAlerts = False

ActiveWorkbook.SaveAs Filename:= _
Chemin & "/home/syl/Factures " & Numéro_facture & ".xlsx", FileFormat:=xlOpenXMLWorkbook, CreateBackup:=False

End Sub


Encore mil merci pour votre aide ;-)
0
valttt Messages postés 285 Date d'inscription mercredi 7 mars 2012 Statut Membre Dernière intervention 14 janvier 2025 15
Modifié par valttt le 30/06/2016 à 17:48
Oups..., le O a été zappé (Option Explicit).

Cette macro permet de :
A l'ouverture du fichier, il y a incrémentation de cellule E12 de +1
A la fermeture du fichier, il y a création d'un fichier (au même endroit) d'un fichier portant le nom de FactureX.xlsx
X représente le numéro incrémenté.
Il n'y a pas de demande d'enregistrement du fichier d'origine à la fermeture.

Je souhaite qu'à la fermeture du fichier, il y ai création d'un nouveau fichier mais non plus en xlsx, mais en ods, puisque je n'utiliserai plus Excel.

MERCIIIIIIIIIIIIIIIII
0
shunesburg69 Messages postés 1057 Date d'inscription vendredi 23 mars 2007 Statut Membre Dernière intervention 26 février 2020 215 > valttt Messages postés 285 Date d'inscription mercredi 7 mars 2012 Statut Membre Dernière intervention 14 janvier 2025
Modifié par shunesburg69 le 30/06/2016 à 20:46
Normal que ça ne fonctionne pas, LibreOffice utilise l'Open Basic et Excel le VBA.
Ça fonctionne parfois mais car le code est similaire mais certaines fonctions sont différentes. Le mieux c'est de voir avec des développeurs, regarde du côté du site https://www.developpez.net/forums/
0
valttt Messages postés 285 Date d'inscription mercredi 7 mars 2012 Statut Membre Dernière intervention 14 janvier 2025 15
30 juin 2016 à 21:05
Merci pour ton aide et tes conseils ;-)
0