Hi,
hast du dir die Methode angesehen im Code von mir wie dort die Icons gesetzt werden? Es wird einfach nur die Caption um einen entsprechendes UniCode Zeichen erweitert.
Sieht zwar nicht so schön aus ist aber Stabil.
aber die PLZ soll immer absteigend sortiert angezeigt werden
.Add Me.labVorname, "Vorname [DESC], PLZ DESC"
Public Function GetOrderByString(ByVal UseDesc As Boolean)
Dim i As Long
Dim SplitString As Variant
Dim DescString As String
If UseDesc Then
DescString = " DESC"
End If
OrderByStatement = Replace(OrderByStatement, " ,", ",")
SplitString = Split(OrderByStatement, ",")
For i = 1 To UBound(SplitString)
GetOrderByString = GetOrderByString & ", " & Trim(SplitString(i))
Next i
SplitString = Split(SplitString(0), " ")
GetOrderByString = SplitString(0) & DescString & GetOrderByString
End Function
Public Function GetOrderByString(ByVal UseDesc As Boolean)
Dim i As Long
Dim SplitString As Variant
Dim DescString As String
Dim OrderString As String
If UseDesc Then
DescString = " DESC"
End If
OrderString = Replace(OrderByStatement, " ,", ",")
OrderString = Replace(OrderString, " [DESC]", DescString)
SplitString = Split(OrderString, ",")
For i = 1 To UBound(SplitString)
GetOrderByString = GetOrderByString & ", " & Trim(SplitString(i))
Next i
SplitString = Split(SplitString(0), " ")
GetOrderByString = SplitString(0) & DescString & GetOrderByString
End Function
Eine Dynamische Änderung der Sortierung von mehr als 1 Datenfeld ist da vielleicht der Spezialfall.
Public Function GetOrderByString(ByVal UseDesc As Boolean)
Dim SplitString() As String
Dim DescString As String
Dim OrderString As String
If UseDesc Then
DescString = " DESC"
End If
OrderString = Replace(OrderByStatement, " ,", ",")
OrderString = Replace(OrderString, " [DESC]", DescString)
SplitString = Split(OrderString, ",")
OrderString(0) = Replace(Replace(OrderString(0), " ASC", vbnullstring), " DESC", vbNullstring) & DescString
GetOrderByString = Join(OrderString, ",")
End Function
.Add Me.labFamilienname, "Familienname", "Vorname [DESC], LaenderCode, Ort, PLZ, Strasse"
Public Function Add(ByVal ControlRef As Control, ByVal DataFieldName as string, Optional ByVal AdditionalOrderByStatement As String) As FormSortingControl
...