Zeichen zählen - Erweitert

Das Textverarbeitungsprogramm

Moderator: Moderatoren

Benutzeravatar
wodga
**
Beiträge: 49
Registriert: Do, 29.01.2004 23:25

Zeichen zählen - Erweitert

Beitrag von wodga »

Hallo,

ich würde gerne die Zeichen für jede Zeile extra zählen und anzeigen lassen.

Die Feldfunktion Statistik-Zeichen zählt alle Zeichen im gespeicherten Dokument. Wie könnte man diese Funktion erweitern, damit jede Zeile extra gezählt wird? (Gruß an die Makrofraktion :-)
sidux 2009-04, oo 3.1.1
Toxitom
********
Beiträge: 3769
Registriert: Di, 12.08.2003 18:07
Wohnort: Wiesbaden
Kontaktdaten:

Beitrag von Toxitom »

Hey Wodga,
ch würde gerne die Zeichen für jede Zeile extra zählen und anzeigen lassen.
Hmm, die Zeile ist abhängig von den gesetzten Rändern, der gewählten Schrift und der Schriftgröße - alles Eigenschaften, die das normale, interen Dokument nicht direkt kennt. Das geht immer nur mit dem aktiven Controller des Dokumentes.
Die Programmierung ist dann nicht ganz ohne: Du nimmst den ViewCursor, setzt ihn an den Anfang der Zeile, markiert bis zum Ende der Zeile , liest den markierten Text in eine Variable und zählst die Zeichen. - Und das dann für jede Zeile.

Also, das war jetzt das Prinzip - dann viel Spass beim Programmieren.

Hab noch einen Beispielcode: Der folgende Code liest dir die Zeilenlänge aus - dort wo der Cursor aktuell steht:

Code: Alles auswählen

Sub ZeilenLaengeAuslesen
	Dim oDoc as object, oViewC as object, sZeile as String
	oDoc = ThisComponent
	oViewC = oDoc.getCurrentController().getViewCursor()
	oViewC.gotoStartOfLine(false)
	oViewC.goToEndOfLine(true)
	sZeile = oViewC.String
	msgbox "Die markierte Zeile beinhaltet aktuell " & len(sZeile) & _
	        " Zeichen.", 0 , "Anzahl der Zeichen"
	oViewC.gotostartOfLine(false)
End Sub
Gruss
Thomas
Unterstützer LibreOffice, zertifizierter Trainer und Berater
Bücher: LibreOffice 6- Einstieg und Umstieg
Makros Grundlagen - LibreOffice / OpenOffice Basic
Antworten