

![]() | 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: |
1 message in org.openoffice.fr.prog[prog] Suppression d'une section avec...| From | Sent On | Attachments |
|---|---|---|
| Joël Vimenet | Oct 28, 2008 9:27 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: | [prog] Suppression d'une section avec sa page | Actions... |
|---|---|---|
| From: | Joël Vimenet (joel...@anyware-tech.com) | |
| Date: | Oct 28, 2008 9:27:11 am | |
| List: | org.openoffice.fr.prog | |
Bonjour, j'ai une macro qui doit supprimer ou ajouter une section à mon document texte. Si elle est présente on la supprime, si elle est absente on l'ajoute. Ma section se trouve sur 2 page. Elle est ajoutée à partir d'un autotexte. Mon problème est que quand je supprime ma section, il reste une page vide, puis quand j'ajoute à nouveau la section, elle vient s'ajouter après cette page vide. Je me retrouve donc assez rapidement avec plusieurs pages vides. Je souhaiterais donc supprimer ces pages en même temps que je supprime la section. J'ai essayé beaucoup de méthodes mais il reste toujours un page supplémentaire. Je joins à ce message la procédure utilisée pour ajouter/supprimer la section. Merci d'avance pour vos conseils
-- Joël
sub AjouteAutotexteFelin() nomSection = "region_id_felin" dim dispatcher as object dim document as object leDoc = thisComponent viewCursor = ThisComponent.CurrentController.viewCursor dispatcher = createUnoService("com.sun.star.frame.DispatchHelper") document = ThisComponent.CurrentController.Frame
if (leDoc.TextSections.hasByName(nomSection)) then dim laSection, monCurseur laSection=leDoc.TextSections.getByName(nomSection) viewCursor.gotoRange(laSection.anchor.end, false) laSection.anchor.string="" leDoc.Text.removeTextContent(laSection) SectionPrec = leDoc.textSections.getByName("bordereau") viewCursor.gotoRange(SectionPrec.anchor.end, false) else SectionPrec = leDoc.textSections.getByName("bordereau")
viewCursor.gotoRange(SectionPrec.anchor.end, false)
dim args2(2) as new com.sun.star.beans.PropertyValue args2(0).Name = "Kind" args2(0).Value = 3 args2(1).Name = "TemplateName" args2(1).Value = "Standard" args2(2).Name = "PageNumber" args2(2).Value = 0
' dispatcher.executeDispatch(document, ".uno:InsertBreak", "", 0, args2())
dim newSection newSection = leDoc.createInstance("com.sun.star.text.TextSection") with newSection .Name = nomSection end with
leDoc.text.insertTextContent(viewCursor,newSection,true)
rem ----------------------------------------------------------------------- rem INSERTION DE L'AUTOTEXTE DANS LA SECTION
SectionPrec = leDoc.textSections.getByName(nomSection) Curseur = leDoc.text.createTextCursorByRange(SectionPrec.anchor.start) Curseur.gotoRange(SectionPrec.anchor.end, false)
dim AutoTextContainer, Group, Entry AutoTextContainer = CreateUnoService("com.sun.star.text.AutoTextContainer") Group = AutoTextContainer.getByName("ETBS") Entry = Group.getByName("IF") Entry.applyTo(Curseur) endif end sub







