Nächste Änderung in Writer suchen

Antwort erstellen


BBCode ist eingeschaltet
[img] ist ausgeschaltet
[url] ist eingeschaltet
Smileys sind ausgeschaltet

Die letzten Beiträge des Themas
   

Ansicht erweitern Die letzten Beiträge des Themas: Nächste Änderung in Writer suchen

Re: Nächste Änderung in Writer suchen

von mikeleb » Mi, 15.04.2015 16:21

Hallo,

das folgende Makro springt bei jedem Aufruf zur nächsten Änderung

Code: Alles auswählen

global nIndex as integer

Sub Main

	odoc=thiscomponent
	if isempty(nIndex) or nIndex=odoc.redlines.getcount() then nIndex=0
	omark=odoc.redlines.getbyindex(nIndex)
	oview=oDoc.GetCurrentController.ViewCursor
	oview.gotoRange(omark.redlineend,false)
	oview.gotoRange(omark.redlinestart,true)
	nIndex=nIndex+1

End Sub
edit : besser wäre vielleicht

Code: Alles auswählen

global nIndex as integer

Sub Main

	odoc=thiscomponent
	if isempty(nIndex) or nIndex>=odoc.redlines.getcount() then nIndex=0
	omark=odoc.redlines.getbyindex(nIndex)
	oview=oDoc.GetCurrentController.ViewCursor
	oview.gotoRange(omark.redlineend,false)
	oview.gotoRange(omark.redlinestart,true)
	nIndex=nIndex+1

End Sub
falls zwischendurch Änderungen am Text vorgenommen werden.

Re: Nächste Änderung in Writer suchen

von Stephan » Mi, 15.04.2015 11:26

Weiß jemand Rat?
Ich bin zwar nicht allwissend (vielleicht weiß deshalb jemand anderes eine Lösung) aber ich kenne keinen Weg das Fenster unter diesen Umständen per Makro zu schließen.

(Wahrscheinlich müsste man deshalb die gesamte Programmierung anders machen um die Nutzung dieses Fensters zu umgehen, dass geht dann aber nicht per Makrorekorder aufzuzeichnen und ist auch nicht sooo einfach das ich eine Lösung bereits wüsste.)


Gruß
Stephan

Nächste Änderung in Writer suchen

von MichaAlzt » Mi, 15.04.2015 10:26

Hallo,

ich habe ein Makro geschrieben, mit dem ich in einem langen Text schnell zur nächsten Änderung springen kann. Da ich nicht wirklich programmieren kann (nur ein bisschen VBA-Erfahrung), habe ich das Makro über den Makro-Recorder erstellt. Ich öffne während der Makro-Aufzeichnung einfach das Menü Bearbeiten/Änderungen/Akzeptieren_oder_verwerfen. Dann springt der Cursor wie gewünscht zur nächsten Änderung. Makro abspeichern. Fertig. So sieht der Code des fertigen Makros aus:

Code: Alles auswählen

rem ----------------------------------------------------------------------
dispatcher.executeDispatch(document, ".uno:AcceptTrackedChanges", "", 0, Array())

rem ----------------------------------------------------------------------
dim args2(0) as new com.sun.star.beans.PropertyValue
args2(0).Name = "ShowTrackedChanges"
args2(0).Value = true

dispatcher.executeDispatch(document, ".uno:ShowTrackedChanges", "", 0, args2())

Es gibt nur ein Probem: Leider bleibt das Fenster "Änderungen akzeptiern oder verwerfen" nach Ausführung des Makros geöffnet. Wie kann ich es schließen?

P.S. Die einfachste Idee wäre natürlich, das Fenster während der Makroaufzeichnung zu schließen - dann funzt aber leider das ganze Makro nicht - warum auch immer. Habe alles in diese Richtung ausprobiert - aber ohne Erfolg.

Weiß jemand Rat?

Beste Grüße

Micha

Nach oben