Verbesserungsvorschlag für die BasicMaker-Hilfe

Antworten
Benutzeravatar
Get
Beiträge: 243
Registriert: 08.12.2014 13:39:39
Wohnort: Landkreis München

Verbesserungsvorschlag für die BasicMaker-Hilfe

Beitrag von Get »

Mein Problem: Ich wollte mit einem Skript ein komplettes Dokument markiere, kopieren und in ein anderes Dokument einfügen. Zum markieren gibt es die Funktion »Selection.SetRange Start, End«
Problem 1: Das in der BasicMaker-Hilfe genannte Beispiel »tm.ActiveDocument.Selection.SetRange 1, 4« wählt nicht die Zeichen 1-4, sondern nur die Zeichen 2-4. Wer das erste Zeichen mitselektieren will, muss »tm.ActiveDocument.Selection.SetRange 0, 4« eingeben.
Problem 2: Wie findet man den Wert, der als »End« eingesetzt werden kann?
Wer mit einem BM-Skript ein ganzes Dokument markieren will, könnte auf die Idee kommen, mit Selection.SetRange von 0 bis zur Anzahl der »Keystrokes« zu markieren, etwa so:
Anschlagzahl = tm.ActiveDocument.BuiltInDocumentProperties(smoPropertyKeystrokes).Value
tm.ActiveDocument.Selection.SetRange 0, Anschlagzahl
Leider werden so zu wenige Zeichen markiert. Mein Verdacht: Absatzmarken und vergleichbare Zeichen werden nicht als »Keystrokes« gezählt.
Dann habe ich folgende Alternative untersucht:
With tm.ActiveDocument
.Selection.SetRange .Paragraphs(Start).Range.Start, .Paragraphs(End).Range.End
End With
Als »Start« gibt man hier tatsächlich »1« ein, nicht etwa »0«. Aber was als »End«?
Erster Versuch: »parCount = tm.ActiveDocument.BuiltInDocumentProperties.Item(smoPropertyParas).Value«
With tm.ActiveDocument
.Selection.SetRange .Paragraphs(1).Range.Start, .Paragraphs(parCount).Range.End
End With
Das funktioniert, aber es gibt auch hier ein Risiko: »BuiltInDocumentProperties.Item(smoPropertyParas)« zählt nur Absätze, die Text enthalten. Je mehr »leere« Abatzmarken auftauchen, desto weniger »echte« Absätze werden markiert.
Die Lösung ist: »parCount = tm.ActiveDocument.Paragraphs.Count«. Das zählt alle Absätze, egal ob sie Text enthalten oder nicht.

Meine Bitte an die SoftMaker-Entwicklungsabteilung: Diese Informationen sollten in die Hilfedatei. Mir zumindest hätte das eine lange Nacht der der Suche nach der Problemlösung erspart.
Gerhard Etzel
Autor. Meine Bücher wurden alle mit Textmaker geschrieben!
Windows 10, SMO NX Universal 64 Bit Prof.
Intel(R) Core(TM) i5, 16 GB Ram
SuperTech
SoftMaker Team
SoftMaker Team
Beiträge: 4126
Registriert: 11.03.2020 17:30:08

Re: Verbesserungsvorschlag für die BasicMaker-Hilfe

Beitrag von SuperTech »

Vielen Dank für Ihren Beitrag. Ich habe diesen Verbesserungsvorschlag weitergeleitet.
Antworten

Zurück zu „BasicMaker NX und 2024 für Windows“