[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 !

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

Messagepar fernando.ri » 05 Oct 2018 10:36

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   AgrandirRéduire
   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 édition par fernando.ri le 16 Oct 2018 10:53, édité 5 fois.
Open Office 4.1.5
sous W10 Pro 64b
fernando.ri
Fraîchement OOthentifié
 
Message(s) : 4
Inscrit le : 03 Oct 2018 17:49

Re: [Calc] Justification cellule/colonne sous vbs

Messagepar Dude » 05 Oct 2018 16:27

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.
Avatar de l’utilisateur
Dude
Grand Maître de l'OOffice
Grand Maître de l'OOffice
 
Message(s) : 20298
Inscrit le : 03 Mars 2006 08:45
Localisation : 127.0.0.1

Re: [Calc] Justification cellule/colonne sous vbs

Messagepar fernando.ri » 06 Oct 2018 10:46

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é
 
Message(s) : 4
Inscrit le : 03 Oct 2018 17:49

Re: [VBS] Justification cellule/colonne sous Calc

Messagepar fernando.ri » 06 Oct 2018 16:32

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
fernando.ri
Fraîchement OOthentifié
 
Message(s) : 4
Inscrit le : 03 Oct 2018 17:49

Re: [VBS] Justification cellule/colonne sous Calc

Messagepar Churay » 07 Oct 2018 16:20

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...
Avatar de l’utilisateur
Churay
ManitOOu
ManitOOu
 
Message(s) : 2657
Inscrit le : 30 Avr 2009 05:54
Localisation : CATALUNYA

Re: [VBS] Justification cellule/colonne sous Calc

Messagepar fernando.ri » 07 Oct 2018 16:56

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
fernando.ri
Fraîchement OOthentifié
 
Message(s) : 4
Inscrit le : 03 Oct 2018 17:49

Re: [VBS] Justification cellule/colonne sous Calc

Messagepar Dude » 22 Oct 2018 18:47

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
Avatar de l’utilisateur
Dude
Grand Maître de l'OOffice
Grand Maître de l'OOffice
 
Message(s) : 20298
Inscrit le : 03 Mars 2006 08:45
Localisation : 127.0.0.1


Retour vers Macros et API

Qui est en ligne ?

Utilisateur(s) parcourant ce forum : Aucun utilisateur inscrit et 3 invité(s)