Kommentar som makro

Brugerhjælp og support til makroer i LibreOffice Basic

Moderators: Lodahl, LarsBrandi

Post Reply
perbrock
Posts: 2
Joined: Sun Jan 13, 2013 13:14
Location: Skanderborg

Kommentar som makro

Post by perbrock » Sun Jan 13, 2013 13:33

Jeg erkender at være nybegynder i makroverdenen, men der må være en løsning på mit lille problem. Jeg er lærer i overbygningen, og når jeg retter stile, dukker de samme fejl op igen og igen. Jeg vil derfor gerne lave en makro med en fast tekst og evt. et link, der henviser til en forklaring på fejltypen.
Når jeg forsøger at indsætte en kommentar, får jeg følgende kode:
rem dispatcher.executeDispatch(document, ".uno:InsertAnnotation", "", 0, Array())
Ved at fjerne rem bliver kommandoen tilsyneladende aktiv, men så skal jeg have tekst ind i boksen. Hvad gør jeg?
På forhånd tak
Per

Jens S
Posts: 1091
Joined: Sun Mar 25, 2007 21:42

Post by Jens S » Sun Jan 13, 2013 14:07

Prøv med denne makro taget fra Andrew's makro samling:

Code: Select all

Sub AddNoteAtCursor
Dim vDoc, vViewCursor, oCurs, vTextField
Dim s$
'Lets lie and say that this was added ten days ago!
Dim aDate As New com.sun.star.util.Date
With aDate
.Day = Day(Now - 10)
.Month = Month(Now - 10)
.Year = Year(Now - 10)
End With
vDoc = ThisComponent
vViewCursor = vDoc.getCurrentController().getViewCursor()
oCurs=vDoc.getText().createTextCursorByRange(vViewCursor.getStart())
s = "com.sun.star.text.TextField.Annotation"
vTextField = vDoc.createInstance(s)
With vTextField
.Author = "AP" 'her retter du
.Content = "It sure is fun to insert notes into my document" 'her retter du
'Ommit the date and it defaults to today!
.Date = aDate
End With
vDoc.Text.insertTextContent(oCurs, vTextField, False)
End Sub
Dette er alm. Star Basic og er lettere at tilpasse og forstå end dispatcher-makroen du får ved at bruge makro-optager.
Når du har lavet dine tilpasninger, lav så en tilknytning til makroen med en tastatur-genvej.

mvh
Jens

mvh
Jens

perbrock
Posts: 2
Joined: Sun Jan 13, 2013 13:14
Location: Skanderborg

Tak for hjælpen

Post by perbrock » Sun Jan 13, 2013 14:45

Hej Jens
Tak for hjælpen. Denne vil jeg arbejde lidt videre med, så jeg også kan få markeret det fejlbehæftede ord med fx en anden skriftfarve. Jeg læser lidt op på Star Basic og ser nærmere på Andrews makroer.
Per

User avatar
Lodahl
Posts: 1957
Joined: Wed Sep 14, 2005 7:27
Location: Storkøbenhavn
Contact:

Post by Lodahl » Sun Jan 13, 2013 15:55

Hej,
En anden måde at løse opgaven på, er med autotekster.
Hvis du indsætter en kommentar i en tekst, markerer netop det sted i teksten, hvor kommentaren er indsat, kan du oprette en autotekst med Rediger - Autotekst (CTRL+F3).
Du kan oprette en autotekst for hver typisk fejl, og indsætte kommentaren med f.eks. Fejl11 +F3.

Så undgår du at programmere dig ud af problemet.
Med venlig hilsen

Leif Lodahl
Blog: https://libreofficedk.blogspot.dk
LibreOffice: http://da.libreoffice.org

Post Reply

Who is online

Users browsing this forum: No registered users and 2 guests