[Résolu][Calc] fermeture fichier odt

Discussions et questions sur tout ce qui concerne la programmation tous langages et tous modules confondus.

Modérateur : Vilains modOOs

Règles du forum
:alerte: 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 !
Avatar de l’utilisateur
Roby68
Membre OOrganisé
Membre OOrganisé
Messages : 66
Inscription : 09 oct. 2013 21:12

[Résolu][Calc] fermeture fichier odt

Message par Roby68 »

bonjour le Forum

Pour faire suite au code de "Dude" ( ci-dessous) pour une édition d'un fichier odt à partir de calc,

Code : Tout sélectionner

Sub EditionGUIDE
   dim AdresseDoc as String, AdresseUrl as String
   AdresseDoc = "S:\pse\12 - Dossier F. REFLEXES\Guide PSE 2017.odt"
   AdresseUrl = ConvertToUrl(AdresseDoc)
   oDoc = StarDesktop.LoadComponentFromURL(AdresseUrl,"_blank",0, array())
   'dispatcher = createUnoService("com.sun.star.frame.DispatchHelper")
   rem ----------------------------------------------------------------------
   dim args1(2) as new com.sun.star.beans.PropertyValue
   args1(0).Name = "Copies"
   args1(0).Value = 1
   args1(1).Name = "RangeText"
   args1(1).Value = "1"
   args1(2).Name = "Collate"
   args1(2).Value = true
   oDoc.print(args1())
    'dispatcher.executeDispatch(oDoc, ".uno:Print", "", 0, args1())
End Sub
j'aimerai qu'après l'édition du fichier odt qu'il soit fermé et que l'on puisse rester dans calc.

Le soucis qui apparait lorsque je lance enregistrer une macro, il ferme tous les fichiers, odt et ods.
Merci pour vos lumières.
Bonne journée Roby

La modération vous a écrit: Pour faciliter la lecture, code mis entre balises [code] par le modérateur.

Dernière modification par micmac le 11 janv. 2018 07:54, modifié 2 fois.
Raison : Ajout de la coche
LibreOffice 5.2.6.2 / LibreOffice 5.3 ( au Bureau ) "Par obligation de version".
Win 7 Pro

LibreOffice 6.2.5.2 ( Maison )
Win 10 Pro
Avatar de l’utilisateur
Dude
IdOOle de la suite
IdOOle de la suite
Messages : 25181
Inscription : 03 mars 2006 07:45
Localisation : 127.0.0.1

Re: [Calc] fermeture fichier odt

Message par Dude »

Roby68 a écrit :Pour faire suite au code de "Dude"
Où est le lien vers le code que tu pompes ?

Pour fermer un document, tu utilises la méthode close.
A faire bien sûr pour l'objet déclaré pour le document et pas l'application, sans quoi...
Roby68 a écrit :il ferme tous les fichiers, odt et ods.
Je t'invite à utiliser XRay afin de voir les méthodes disponibles sur les objets de ton script.
Avatar de l’utilisateur
Roby68
Membre OOrganisé
Membre OOrganisé
Messages : 66
Inscription : 09 oct. 2013 21:12

Re: [Calc] fermeture fichier odt

Message par Roby68 »

LibreOffice 5.2.6.2 / LibreOffice 5.3 ( au Bureau ) "Par obligation de version".
Win 7 Pro

LibreOffice 6.2.5.2 ( Maison )
Win 10 Pro
Avatar de l’utilisateur
Roby68
Membre OOrganisé
Membre OOrganisé
Messages : 66
Inscription : 09 oct. 2013 21:12

Re: [Calc] fermeture fichier odt

Message par Roby68 »


La modération vous a écrit: :alerte: Merci de ne pas poster plusieurs messages à la suite !
Si vous devez ajouter un complément d'information, le bouton "Editer" à la droite du message permet d'y remédier.

En attendant une prochaine réponse, vous pouvez participer également en répondant à d'autres questions sur notre forum.

Re

Pour ma part, j'avais essayé l'instruction suivante à la suite de "print", pensant bien faire:

oDoc.close(true)

mais après l'exécution de la macro, je n'ai plus la main elle tourne en boucle.
Merci
LibreOffice 5.2.6.2 / LibreOffice 5.3 ( au Bureau ) "Par obligation de version".
Win 7 Pro

LibreOffice 6.2.5.2 ( Maison )
Win 10 Pro
Piaf
GourOOu
GourOOu
Messages : 5622
Inscription : 25 nov. 2011 18:07
Localisation : Guyane

Re: [Calc] fermeture fichier odt

Message par Piaf »

Bonjour
A tester

Code : Tout sélectionner

Sub EditionGUIDE
Dim AdresseDoc as String, AdresseUrl as String
Dim args1(3) as new com.sun.star.beans.PropertyValue
   AdresseDoc = "S:\pse\12 - Dossier F. REFLEXES\Guide PSE 2017.odt"
   AdresseUrl = ConvertToUrl(AdresseDoc)
   oDoc = StarDesktop.LoadComponentFromURL(AdresseUrl,"_blank",0, array())
   args1(0).Name = "Copies"
   args1(0).Value = 1
   args1(1).Name = "RangeText"
   args1(1).Value = "1"
   args1(2).Name = "Collate"
   args1(2).Value = true
   args1(3).Name = "Wait"
   args1(3).Value = true   
   oDoc.print(args1())
   oDoc.Close(True)
End Sub
A+
Libre Office Version: 6.1.6 et Apache OpenOffice 4.1.6 Sur Xubuntu 18.04 AMD64
Avatar de l’utilisateur
Roby68
Membre OOrganisé
Membre OOrganisé
Messages : 66
Inscription : 09 oct. 2013 21:12

Re: [Calc] fermeture fichier odt

Message par Roby68 »

Bonjour le Forum, Piaf

Merci et bonne journée à tous

Roby
LibreOffice 5.2.6.2 / LibreOffice 5.3 ( au Bureau ) "Par obligation de version".
Win 7 Pro

LibreOffice 6.2.5.2 ( Maison )
Win 10 Pro