

![]() | Start a set with this search |
![]() | Include this search in one of my sets |
![]() | Exclude this search from one of my sets |
![]() | Permalink to these results Paste this link in email or IM: |
| Atom feed for tracking future search results Paste this URL into your reader: |
6 messages in org.openoffice.fr.progRe: [prog] Programmer des sous-totaux...| From | Sent On | Attachments |
|---|---|---|
| Alpha BETA | Aug 23, 2004 11:00 am | |
| Alain Nowak | Aug 24, 2004 1:58 am | |
| Alpha BETA | Aug 24, 2004 9:18 am | |
| Alain Nowak | Aug 25, 2004 2:39 am | |
| Alpha BETA | Aug 25, 2004 4:07 am | |
| Alpha BETA | Aug 25, 2004 4:28 am |

![]() | Permalink for this message Paste this link in email or IM: |
![]() | Permalink for this thread Paste this link in email or IM: |
| Atom feed for this thread Paste this URL into your reader: |
| Subject: | Re: [prog] Programmer des sous-totaux sous calc ? | Actions... |
|---|---|---|
| From: | Alpha BETA (bet...@free.fr) | |
| Date: | Aug 25, 2004 4:28:33 am | |
| List: | org.openoffice.fr.prog | |
J'ai aussi testé sous OO 1.1.1 ça marche !!!
Merci encore ----- Original Message ----- From: Alain Nowak To: pr...@fr.openoffice.org Sent: Wednesday, August 25, 2004 11:39 AM Subject: Re: [prog] Programmer des sous-totaux sous calc ?
Bon, alors voila le code obtenu en transcrivant le Java en Basic (et testé
sous OOo1.1.2) :
Sub sousTotaux Dim oSubTotalColumn(0) as new com.sun.star.sheet.SubTotalColumn
' acces a la zone de cellules oCells = ThisComponent.Sheets.getByIndex(0).getCellRangeByName("A1:C5") oSubDesc = oCells.createSubTotalDescriptor(true)
' Somme de la troisième colonne oSubTotalColumn(0).Column = 2 oSubTotalColumn(0).Function = com.sun.star.sheet.GeneralFunction.SUM ' group by first column oSubDesc.addNew( oSubTotalColumn(), 0 ) oCells.applySubTotals( oSubDesc, true ) End sub
Et voili !
-- Alain Nowak - starxpert www.starxpert.fr
Alpha BETA a écrit :
Merci de l'info, toutefois en supposant que je puisse en effet imposer une
plage par cette méthode :
ThisComponent.Sheets.getByIndex(0).getCellRangeByName("A1:D6")
qui pour moi deviendra dans ma macro :
Asheet=ThisComponent.CurrentController.ActiveSheet
Asheet.getCellRangeByName("A1:O7148")
Je reste coincé pour paramétrer createSubTotalDescriptor . Xray ne m'est
hélas pas très utile sur ce point.
Je coince vraiment .
Puis-je encore solliciter un coup de main ? Alpha
----- Original Message ----- From: Alain Nowak To: pr...@fr.openoffice.org Sent: Tuesday, August 24, 2004 10:59 AM Subject: Re: [prog] Programmer des sous-totaux sous calc ?
Bonjour,
D'après l'exemple en Java, tu peux appeler createSubTotalDescriptor
directement sur un objet représentant une zone de cellule, qui est lui à obtenir
par qqchose comme :
ThisComponent.Sheets.getByIndex(0).getCellRangeByName("A1:D6")
(si la zone de donnée à transformer en sous-totaux est A1:D6 de la
première feuille)
Sur l'objet obtenu, tu obtiens un descripteur du sous-total par
createSubTotalDescriptor, que tu vas ensuite paramétrer en indiquant sur quelles
colonnes porte le sous-total et s'il y a des groupements. Ce descripteur est
ensuite appliqué au sous-total par applySubTotals.
Bon courage,
Et si tu ne l'a pas encore fait, récupère l'outil Xray de Bernard Marcelly
(sur le site OOo), c'est souvent + rapide de trouver les méthodes qui vont bien
avec cet outil qu'en cherchant dans le Dev'Guide ...
-- Alain Nowak - starxpert www.starxpert.fr
Alpha BETA a écrit :
Bonjour,
Nouvel écueil pour moi: on vient de me demander de réaliser sous OO des
sous-totaux sur une feuille calc...
Manuelllement, c'est un vrai plaisir à manipuler.
Mais voilà, je veux aller plus loin et je tente depuis ce WE
d'automatiser la chose.
Péniblement je suis tombé sur
createUnoService("com.sun.star.sheet.SubTotalDescriptor") avec lune méthode
createSubTotalDescriptor( [in] boolean bEmpty ).
Mais plouf-plouf je suis bloqué.
Bien-sûr j'ai tenté ma chance avec l'enregistreur de macros qui comme
toujours me renvoie au Dispatcher avec une plage Array() :
dispatcher.executeDispatch(document, ".uno:DataSubTotals",
"", 0,Array() )
Tout cela est bien gentil mais outre forcer l'ouverture de la boîte de
dialogue des sous-totaux propree à ma feuille active, je ne sais comment remplir
automatiquement cette boîte et encore moins comment activer ces fameux
sous-totaux. Encore une fois le dispatcher est une voie sans issue....
La seule chose que je sache est donc de devoir chercher la solution de
paramétrage du createUnoService("com.sun.star.sheet.SubTotalDescriptor") ...
Si quelqu'un peut m'aider ce serait super .
A propos le guide du developpeur propose un truc mais en JAva et je ne
sais pas quoi en faire . Même question..
Merci d'avance aux bonnes âmes qui voudront bien me donner un coup de
main!







