Macro writer

Bonjour,

Existe-t-il une méthode pour convertir un tableau en texte dans un document Writer par macro ?

Merci

Claude

Bonjour,

un simple collage sans mise en forme converti le tableau en texte, mais je n'ai peut-être pas compris la question ?

Bonne journée.

Ou même dans le doucment, "Tableau", "Convertir" mais je voudrais le faire par macro.

Merci quand même

Claude
------- Message original --------
Sujet : [INTERNET] Re: [fr-users] Macro writer
Pour : users@fr.libreoffice.org

Bonjour

claude wrote

Ou même dans le doucment, "Tableau", "Convertir" mais je voudrais le
faire par macro.

Si tu as activé l'enregistrement des macros (Outils> Options> Avancé)
c'est une opération qui sera mémorisée : cliquer dans le tableau puis
menu Outils> Macros> Enregistrer une macro.

La barre d'outils "enregistrement" s'affiche, faire la conversion par
le menu Tableau> Convertir, puis cliquer sur Terminer l'enregistrement.

Il faudra ensuite indiquer où tu veux enregistrer la macro.

Cordialement
Pierre-Yves

Merci mais j'avoue que j'aimerai ne pas avoir à mélanger le basic et le dispatcher, d'autant plus que je n'ai jamais trouvé sur le net de la doc sur le paramétrage des fonctions du dispatcher.

Je ne sais donc pas comment passer le nom du tableau que je récupère en balayant les objets TextTables des documents que je dois traiter.

J'ai essayé avec le troisième argument puisque c'est de l'alphanumérique mais cela ne fonctionne pas.

Peut-être dans le tableau avec la définition du déliminiteur mais dans ce cas où trouver le nom de l'argument ?

En tout cas, merci quand même de te donner la peine de trouver une solution.

Claude

-------- Message original --------
Sujet : [INTERNET] Re: Re: [fr-users] Macro writer
Pour : users@fr.libreoffice.org

Suite...

claude wrote

Merci mais j'avoue que j'aimerai ne pas avoir à mélanger le basic et le
dispatcher

Ce sera pourtant la solution AMA car, si l'API fournit une méthode
ConvertToTable
<http://api.libreoffice.org/docs/idl/ref/interfacecom_1_1sun_1_1star_1_1text_1_1XTextConvert.html#acd6a573560de9f3ca86f05aa85e50086>
Elle ne semble pas fournir l'inverse (du moins je ne connais pas...).

Donc, sauf si quelqu'un a une autre idée, il faudrait par exemple manipuler
les données (lignes par lignes) pour créer des paragraphes avec le contenu
puis supprimer le tableau. Sachant qu'une cellule peut contenir plusieurs
paragraphes je te laisse imaginer les difficultés... (avant de renoncer à
poursuivre dans cette voie...?).

claude wrote

Je ne sais donc pas comment passer le nom du tableau que je récupère en
balayant les objets TextTables des documents que je dois traiter.

Tu peux utiliser la méthode Select du CurrentController en lui passant
un curseur créé sur le tableau. Dans l'exemple ci-dessous je convertis
un tableau nommé "Tableau2".

ConvertirTableau.odt
<http://nabble.documentfoundation.org/file/n4103057/ConvertirTableau.odt>

Cordialement
Pierre-Yves (ci-dessous le code)

sub PysConvertTableau

dim oDoc as object, oTable as object
dim oTableCursor as object
dim document as object
dim dispatcher as object
dim args1(0) as new com.sun.star.beans.PropertyValue

oDoc = thisComponent
oTable = oDoc.TextTables.getByName("Tableau2")
oTableCursor = oTable.createCursorByCellName("A1")
oDoc.CurrentController.select(oTableCursor)

document = ThisComponent.CurrentController.Frame
dispatcher = createUnoService("com.sun.star.frame.DispatchHelper")

args1(0).Name = "Delimiter"
args1(0).Value = CHR$(9)

dispatcher.executeDispatch(document, ".uno:ConvertTableToText", "", 0,
args1())

end sub

Bon, je vais me résigner......

Encore une fois mille merci

Claude

-------- Message original --------
Sujet : [INTERNET] Re: Re: Re: [fr-users] Macro writer
Pour : users@fr.libreoffice.org