Sortierinformationen aus einem Zellbereich erhalten
TDF LibreOffice Document Liberation Project Community Blogs Weblate Nextcloud Redmine Ask LibreOffice Spende
Zusammenfassung
Diese Seite zeigt ein LibreOffice Basic Makro, das die sortierten Informationen aus einem gegebenen Zellbereich abruft. Es ist ein Beispiel aus Kapitel 13 ("Calc als Datenbank") aus dem Handbuch zu Calc 7.0.
Beschreibung
Die Methode createSortDescriptor() kann verwendet werden, um die sortierten Informationen aus dem gegebenen Bereich abzurufen. Falls diese Methode auf einen Datenbankbereich angewendet wird, wir eine Sortierbeschreibung für die zu sortierenden Daten aus dem Bereich erzeugt. Wenn andererseits createSortDescriptor() auf einen benannten oder unbenannten Standardbereich angewendet wird, wird eine Sortierbeschreibung mit Standardwerten erzeugt. In jedem Fall kann die neu erzeugte Sortierbeschreibung verändert werden und als Argument an die sort Methode übergeben werden, die auf einem gegebenen Bereich angewendet wird.
Das folgende Makro zeigt, wie die sortierten Informationen aus einem Bereich erzeugt und angezeigt werden. Die Ausgabe dieses Makros ist ein Dialog, der die Bestandteile der Sortierbeschreibung anzeigt.
Code
Sub DisplaySortDescriptor
On Error Resume Next
Dim oSheet
Dim oRange ' Zur Erstellung der Sortierbeschreibung wird ein Bereich benötigt.
Dim oSortDescript
Dim i%
Dim s$
Dim oDoc ' Das neu erzeugte Calc Dokument referenzieren.
oDoc = StarDesktop.loadComponentFromURL("private:factory/scalc", "_default", 0, Array())
oSheet = oDoc.Sheets(0)
oRange = oSheet.getCellRangeByName("B28:D33")
oSortDescript = oRange.createSortDescriptor()
For i = LBound(oSortDescript) To UBound(oSortDescript)
s = s & oSortDescript(i).Name & " = "
s = s & oSortDescript(i).Value
s = s & CHR$(10)
Next
MsgBox s, 0, "Sort Descriptor"
End Sub
Dieses Calc Tabellenblatt enthält den obigen LibreOffice Basic Code.