Stefan Weigel schrieb:
Hallo Peter,

Peter Eberlein schrieb:

Mir fällt nur noch ein Makro ein, Interesse?
Ja.

 > (Grundkenntnisse erforderlich)
Vorhanden.

Nachfolgende Beispiele zum Sortieren und Filtern,
Die aSortFields oder die aFilterFields kannst Du vom Index her beliebig erweitern, um mehr als 2 Sortierfelder/Filterkriterien zu erhalten.

Peter

Sub Sortieren()
    '// die Sortierfelder
Dim aSortFields(1) as New com.sun.star.table.TableSortField

    aSortFields(0).Field = 0
    aSortFields(0).IsAscending = true
    aSortFields(0).IsCaseSensitive = false
    aSortFields(1).Field = 1
    aSortFields(1).IsAscending = true
    aSortFields(1).IsCaseSensitive = false

 '// Der sortDescriptor

    Dim aSortDesc(1) as New com.sun.star.beans.PropertyValue
    aSortDesc(0).Name  = "SortFields"
    aSortDesc(0).Value = aSortFields()
    aSortDesc(1).Name  = "ContainsHeader"
    aSortDesc(1).Value = true

oRange = ThisComponent.Sheets(0)' kann natürlich auch ein Zellbereich 'sein
oRange.sort(aSortDesc())

End Sub

Sub Filtern()
Dim aFilterFields(1) as  New com.sun.star.sheet.TableFilterField        

aFilterFields(0).Field = 0'Spalte
aFilterFields(0).IsNumeric = false
aFilterFields(0).StringValue = ""
aFilterFields(0).Operator = com.sun.star.sheet.FilterOperator.EMPTY '/EQUAL'Operator
aFilterFields(1).Field = 1'Spalte
aFilterFields(1).IsNumeric = true 'is Numeric
aFilterFields(1).NumericValue = 10
aFilterFields(1).Operator = com.sun.star.sheet.FilterOperator.GREATER '/EQUAL /LESS
aFilterFields(1).Connection = com.sun.star.sheet.FilterConnection.AND '/OR
'bezieht sich auf das Verhältnis zum vorherigen Filter!
oRange = ThisComponent.Sheets(0) 'oder auf einen Zellbereich filtern

xFilterDesc=oRange.createFilterDescriptor(true)
xFilterDesc.setFilterFields(aFilterFields())
'xfilterDesc.ContainsHeader=false  'optional
'xfilterDesc.CopyOutputData=false    'optional
'xfilterDesc.OutputPosition=outputaddr 'optional für Ausgabe in anderen 'Bereich/Tabelle

oRange.filter(xFilterDesc)
End Sub

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Antwort per Email an