[Résolu][VBS] Justification cellule/colonne sous Calc

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 !
fernando.ri
Fraîchement OOthentifié
Messages : 4
Inscription : 03 oct. 2018 16:49

[Résolu][VBS] Justification cellule/colonne sous Calc

Message par fernando.ri »

Bonjour,
Je cherche à justifier un case ou une colonne d'un fichier ods (Open Office) avec un script VBScrip
Voici le code (fichier zzz.vbs)

Code : Tout sélectionner

   Dim Args(2)
   Dim oServ, oDesk, oSheet, Doc

'Création d'une instance Open Office
   Set oServ = CreateObject("com.sun.star.ServiceManager")
   Set Args(0) = oServ.Bridge_GetStruct("com.sun.star.beans.PropertyValue")
   Set oDesk = oServ.createInstance("com.sun.star.frame.Desktop")

'Création d'un fichier Calc
   Set Doc = oDesk.loadComponentFromURL("private:factory/scalc", "_blank", 0, Args)
   Set oSheet = Doc.getSheets().getByIndex(0)

   Couleur = 16776960   ' Jaune
   R = oSheet.getCellRangeByName("B1").SetString ("Fam")
   R = oSheet.getCellRangeByName("B1").SetPropertyValue("CellBackColor",Couleur)
   R = oSheet.getColumns.getByIndex(1).setPropertyValue("Width",2000)
   R = oSheet.getCellRangeByName("B1").setPropertyValue("HoriJustify", com.sun.star.table.CellHoriJustify.CENTER)

'Sauvegarde au format standard Open Office
   Doc.StoreAsURL "file:///D:/Base/zzz.ods", Args

'Fermeture du document en sauvegardant les modifications
   Doc.Close (True)
Tout fonctionne sauf la justification de la cellule "B1"
J'obtiens un code d'erreur
Ligne 17 caract 4
Object requis 'com'
Je n'ai rein trouvé de probant sur internet

Quelqu'un aurait une idée ?

Merci d'avance
Dernière modification par fernando.ri le 16 oct. 2018 09:53, modifié 5 fois.
Open Office 4.1.5
sous W10 Pro 64b
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] Justification cellule/colonne sous vbs

Message par Dude »

Salut,
fernando.ri a écrit :avec un script VBScrip
Dans ce cas, le balisage est incorrect.
A modifier pour [VBS] Justification cellule/colonne sous Calc

Réfléchissons deux minutes...
Penses-tu que le langage de Microsoft reconnaisse les constantes d'OpenOffice ?
com.sun.star.table.CellHoriJustify est un énumérateur qu'il convient donc de déclarer correctement.
fernando.ri
Fraîchement OOthentifié
Messages : 4
Inscription : 03 oct. 2018 16:49

Re: [Calc] Justification cellule/colonne sous vbs

Message par fernando.ri »

Bonjour,
Je sens une "petite animosité" dans votre réponse, mais j'aurais du précisé en début de message :
Je connais Open Office en utilisation courante
Je connais le langage VBScript
Mais je suis complètement novice en programmation Open Office en VBScript
Mon travail de 30 ans en tant que formateur et support d'outils XAO (Computervion, Euclid, Catia m'ont appris un chose :
"IL N'Y A PAS DE QUESTION STUPIDE".

D'autre part je vouvoie par respect.
Je tutoie par copinage.
Mais je suis d'une autre génération ...

Merci infiniment pour votre réponse Oh! Grand Maître OOpen Office.
Nota : je finirais bien par trouver une réponse exploitable
Open Office 4.1.5
sous W10 Pro 64b
fernando.ri
Fraîchement OOthentifié
Messages : 4
Inscription : 03 oct. 2018 16:49

Re: [VBS] Justification cellule/colonne sous Calc

Message par fernando.ri »

Re Bonjour,
Le perspicacité ça paille, je viens de trouver "une" solution (pas par Internet mais en testant plusieurs choses).

Il suffit tout simplement de remplacer "com.sun.star.table.CellHoriJustify.CENTER" ,qui me parait bien compliqué, par "2"
"Pourquoi faire simple quand on peut faire compliqué" mais restons humble.

Encore MERCI ...
Open Office 4.1.5
sous W10 Pro 64b
Avatar de l’utilisateur
Churay
ManitOOu
ManitOOu
Messages : 2668
Inscription : 30 avr. 2009 04:54
Localisation : CATALUNYA

Re: [VBS] Justification cellule/colonne sous Calc

Message par Churay »

cOOordialement
---
AOO 4.0.1 W7-PRO & LO 5.1.6.2 Debian 7.8 & Ubuntu 16.04 LTS
---
F1 : ça aide...
XRay + SDK :super:
---
Quand le NOT CONFIRMED sera corrigé (OOo et LO) , je serai heureux...
fernando.ri
Fraîchement OOthentifié
Messages : 4
Inscription : 03 oct. 2018 16:49

Re: [VBS] Justification cellule/colonne sous Calc

Message par fernando.ri »

Bonjour,
Oui c'est vrai la doc cela peut servir et j'aurais bien aimer trouver la solution sur un forum.
Mais force est de constater que l'on trouve beaucoup de Visual Basic, Java … mais peu en VBScript (couplé avec HTML) pourtant intéressant car compatible avec beaucoup de versions de Windows (cela n'engage que moi).

La j'ai simplement réfléchi deux secondes (comme conseillé ...) je suis novice,
et en testant les valeurs 0 puis 1 puis 2 j'ai eu la solution.

J'avais trouvé la solution "com.sun.star.table.CellHoriJustify.CENTER" sur internet en VBA et j'ai essayé de l'adapter en vbscript sans succès, d'où ma question en désespoir de cause.

Merci encore
Open Office 4.1.5
sous W10 Pro 64b
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: [VBS] Justification cellule/colonne sous Calc

Message par Dude »

fernando.ri a écrit :et en testant les valeurs 0 puis 1 puis 2 j'ai eu la solution
Pour les prochains qui chercheraient à savoir quelle valeur renvoie une constante :
no_problemo.png
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.