

![]() | 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: | Alain Nowak (ano...@starxpert.fr) | |
| Date: | Aug 25, 2004 2:39:03 am | |
| List: | org.openoffice.fr.prog | |
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 <mailto:ano...@starxpert.fr> *To:* pr...@fr.openoffice.org <mailto: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!







