vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
Blitzschnelles Erstellen von grafischen Diagrammen!  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2024
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

Fortgeschrittene Programmierung
Re: FlexGrid sortiern nach Spaltenbezeichner mit Datum 
Autor: Virtex
Datum: 03.09.21 12:11

Habs nun doch über eine Hilfszeile (22) gemacht.
Dafür konvertiere ich das Datum in einen Zahlenwert (so wie in Excel (1.1.1900)

CLng(CDate(SplitString(temp4, " -", 1)))
und im Flexgrid sortier ich dann so:
(Quasi die Col umsetzen auf die Spalte nach der sortiert werden soll)

Private Sub MSFlexGrid1_Click()
With MSFlexGrid1
    ' Klick auf Spaltenbezeichner?
    If .MouseRow = 0 And .MouseCol > 0 Then
      ' Gridinhalt sortieren
      If nLastSortCol = .MouseCol Then
        ' Sortierung umkehren
 
        If .MouseCol = 1 Or .MouseCol = 21 Then
 
            If nLastSortDesc = flexSortGenericAscending Then
                .Sort = flexSortStringDescending
                nLastSortDesc = flexSortGenericDescending
            Else
                .Sort = flexSortStringAscending
                nLastSortDesc = flexSortGenericAscending
            End If
 
        Else
            If nLastSortDesc = flexSortGenericAscending Then
                .Sort = flexSortGenericDescending
                nLastSortDesc = flexSortGenericDescending
            Else
                .Sort = flexSortGenericAscending
                nLastSortDesc = flexSortGenericAscending
            End If
        End If
 
 
      If .MouseCol = 19 Then
        .Col = 22
            If nLastSortDesc = flexSortGenericAscending Then
                .Sort = flexSortStringDescending
                nLastSortDesc = flexSortGenericDescending
            Else
                .Sort = flexSortStringAscending
                nLastSortDesc = flexSortGenericAscending
            End If
 
        Else
            If nLastSortDesc = flexSortGenericAscending Then
                .Sort = flexSortGenericDescending
                nLastSortDesc = flexSortGenericDescending
            Else
                .Sort = flexSortGenericAscending
                nLastSortDesc = flexSortGenericAscending
            End If
        End If
 
      Else
 
        ' aufsteigende Sortierung
        If .MouseCol = 1 Or .MouseCol = 21 Then
            .Sort = flexSortStringAscending
            nLastSortCol = .MouseCol
            nLastSortDesc = flexSortGenericAscending
 
        Else
        If .MouseCol = 19 Then
            .Col = 22
            .Sort = flexSortStringAscending
            nLastSortCol = .MouseCol
            nLastSortDesc = flexSortGenericAscending
 
        Else
 
            .Sort = flexSortGenericAscending
            nLastSortCol = .MouseCol
            nLastSortDesc = flexSortGenericAscending
        End If
      End If
      End If
Manchmal geht es doch alleine, wollte euch die Lösung aber nicht vorenthalten

Gruß

Virtex
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
FlexGrid sortiern nach Spaltenbezeichner mit Datum484Virtex03.09.21 09:45
Re: FlexGrid sortiern nach Spaltenbezeichner mit Datum236Virtex03.09.21 12:11

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2024 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel