Discussions et questions sur tout ce qui concerne la programmation tous langages et tous modules confondus.
Modérateur :Vilains modOOs
Règles du forum Balisage obligatoire dans cette section !
Aidez-nous à vous aider au mieux en balisant correctement votre question : reportez-vous sur les règles de cette section avant de poster !
bonjour, j'ai cree cette macro pour mon ancien pc sous w7 qui fonctionne tees bien mais je voulais l'adapter pour mon mac.
Lorsque je clic sur le bouton "enregistre patient" je n'arrive pas a le faire enregistre sur le dossier qui se trouve sur mon mac( Macintosh HD/Utilisateurs/Patrick/dossier patient) sachant que j'utilise le nom du patient
pouvez vous me dire ce qui cloche dans la macro
Merci
sub enregistre
rem ----------------------------------------------------------------------
rem definitions des variables
rem ----------------------------------------------------------------------
dim document as object
dim dispatcher as object
rem ----------------------------------------------------------------------
rem get access to the document
rem ----------------------------------------------------------------------
document = ThisComponent.CurrentController.Frame
dispatcher = createUnoService("com.sun.star.frame.DispatchHelper")
rem ----------------------------------------------------------------------
rem Récupération du contenu de la cellule B7
rem ----------------------------------------------------------------------
MonDoc = ThisComponent
MaFeuil = MonDoc.CurrentController.ActiveSheet
MonTxt = MaFeuil.GetCellRangeByName("B7").String
rem ----------------------------------------------------------------------
rem Enregistrement du nouveau fichier
rem ----------------------------------------------------------------------
dim args1(2) as new com.sun.star.beans.PropertyValue
args1(0).Name = "URL"
args1(0).Value = "file:Macintosh HD/Utilisateurs/Patrick/dossier patient/" & MonTxt & ".ods"
args1(1).Name = "FilterName"
args1(1).Value = "calc8"
args1(2).Name = "SelectionOnly"
args1(2).Value = true
dispatcher.executeDispatch(document, ".uno:SaveAs", "", 0, args1())
rem ----------------------------------------------------------------------
rem fin de la macro
rem ----------------------------------------------------------------------
end sub
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
Dernière modification par micmac le 25 oct. 2018 20:31, modifié 1 fois.
Raison :Balisage
Cette section a des règles très précises que vous devez obligatoirement suivre pour obtenir de l'aide. C'est indiqué dans le cadre rouge en haut de la page.
Il est demandé aux auteurs de faire précéder le titre de leur question d'une balise adéquate. Ce balisage est extrêmement important car il permet d'avoir une base de connaissance optimum en cas de recherche. Avez-vous remarqué comment étaient les autres questions postées ?
N'oubliez pas que le terme "Macro" ou "OpenOffice" ne doit pas être employé car il est implicite. Essayer de synthétiser au mieux ce que vous cherchez à faire.
Un titre accrocheur vous permettra d'une part d'être aidé plus rapidement et d'autre part, d'enrichir notre base de connaissances.
Nous l'avons fait pour vous cette fois-ci mais lors de votre prochaine question, nous vous remercions de le faire vous-même sous peine de voir votre sujet verrouillé.
merci pour ta réponse rapide
Mais je suis un peu novice, et je ne vois pas ce qui cloche dans cette commande:
args1(0).Value = "file:Macintosh HD/Utilisateurs/Patrick/dossier patient/" & MonTxt & ".ods"
sub OuSuisJe
oFP = createUnoService("com.sun.star.ui.dialogs.FolderPicker")
if oFP.execute() = 0 then exit sub
sRep = oFP.Directory
msgbox sRep
end sub
Choisis ton répertoire et regarde la chaîne qui t'est retournée.
Merci pour ton explication pour trouver le chemin qui fonctionne a merveille.
Maintenant je n'arrive toujours pas a enregistrer quand je clique il doit y avoir un bug dans la macro peux tu m'aider pour trouver le problème
merci
sub enregistre
rem ----------------------------------------------------------------------
rem definitions des variables
rem ----------------------------------------------------------------------
dim document as object
dim dispatcher as object
rem ----------------------------------------------------------------------
rem get access to the document
rem ----------------------------------------------------------------------
document = ThisComponent.CurrentController.Frame
dispatcher = createUnoService("com.sun.star.frame.DispatchHelper")
rem ----------------------------------------------------------------------
rem Récupération du contenu de la cellule B7
rem ----------------------------------------------------------------------
MonDoc = ThisComponent
MaFeuil = MonDoc.CurrentController.ActiveSheet
MonTxt = MaFeuil.GetCellRangeByName("A131").String
rem ----------------------------------------------------------------------
rem Enregistrement du nouveau fichier
rem ----------------------------------------------------------------------
dim args1(2) as new com.sun.star.beans.PropertyValue
args1(0).Name = "URL"
args1(0).Value = "file:///localhost/Users/Patrick/Professionel/Dossier%20patiente%20Open/"& MonTxt & ".ods"
args1(1).Name = "FilterName"
args1(1).Value = "calc8"
args1(2).Name = "SelectionOnly"
args1(2).Value = true
dispatcher.executeDispatch(document, ".uno:SaveAs", "", 0, args1())
rem ----------------------------------------------------------------------
rem fin de la macro
rem ----------------------------------
Dernière modification par Oukcha le 04 oct. 2018 07:25, modifié 1 fois.
Raison :Balises [code] et [/code] = lecture et sélection simplifiée de vos macros
bonjour,
Je pense que j'ai trouver la solution maintenant en réinstallant java car il n'etait pas pris en compte par libreoffice
De plus j'ai fait un teste en changeant le dossier d'enregistrement
sub enregistre
rem ----------------------------------------------------------------------
rem definitions des variables
rem ----------------------------------------------------------------------
dim document as object
dim dispatcher as object
rem ----------------------------------------------------------------------
rem get access to the document
rem ----------------------------------------------------------------------
document = ThisComponent.CurrentController.Frame
dispatcher = createUnoService("com.sun.star.frame.DispatchHelper")
rem ----------------------------------------------------------------------
rem Récupération du contenu de la cellule B7
rem ----------------------------------------------------------------------
MonDoc = ThisComponent
MaFeuil = MonDoc.CurrentController.ActiveSheet
MonTxt = MaFeuil.GetCellRangeByName("B7").String
rem ----------------------------------------------------------------------
rem Enregistrement du nouveau fichier
rem ----------------------------------------------------------------------
dim args1(2) as new com.sun.star.beans.PropertyValue
args1(0).Name = "URL"
args1(0).Value = "file://localhost/Users/Patrick/Professionel/teste/"& MonTxt & ".ods"
args1(1).Name = "FilterName"
args1(1).Value = "calc8"
args1(2).Name = "SelectionOnly"
args1(2).Value = true
dispatcher.executeDispatch(document, ".uno:SaveAs", "", 0, args1())
rem ----------------------------------------------------------------------
rem fin de la macro
rem ----------------------------------------------------------------------
end sub
donc pour moi c'est résolu
Merci pour votre aide
Dernière modification par micmac le 25 oct. 2018 20:30, modifié 1 fois.
Raison :Code mis entre balises