Thema Datum  Von Nutzer Rating
Antwort
24.05.2020 15:16:35 Can
NotSolved
24.05.2020 18:25:16 Flotter Feger
NotSolved
24.05.2020 20:08:07 Gast83283
NotSolved
Blau Sortierfunktion
24.05.2020 21:33:06 Gast95919
NotSolved
25.05.2020 21:40:34 Gast32525
NotSolved

Ansicht des Beitrags:
Von:
Gast95919
Datum:
24.05.2020 21:33:06
Views:
573
Rating: Antwort:
  Ja
Thema:
Sortierfunktion
Range(strSpH & 1 & AnzahlDaten)

Das sieht fragwürdig aus - soll das wirklich so sein?

 

So würde ich es machen:

Option Explicit

Sub Test1234()
  
  Dim myCustomList As Variant
  Dim myCustomListIndex As Long
  
  myCustomList = Array("H", "A", "B")
  
  On Error Resume Next
  myCustomListIndex = 0
  myCustomListIndex = Application.GetCustomListNum(myCustomList)
  On Error GoTo 0
  
  If myCustomListIndex = 0 Then
  '# create CustomList
    Call Application.AddCustomList(myCustomList)
    myCustomListIndex = Application.GetCustomListNum(myCustomList)
  End If
  
  
  With ThisWorkbook.Worksheets("Tabelle1") '<- anpassen
    
    Dim rngTable As Excel.Range
    
    'Datenbereich (inkl. Kopfzeile)
    '* Dem Beispiel nach ergibt das hier 'A1:I%', wobei die Zeile '%' sich aus der Suche in Spalte A - von unten nach oben - ergibt.
    '               Range(<BEREICH_ZELLE_UNTEN_LINKS>, <BEREICH_ZELLE_OBEN_RECHTS>)
    Set rngTable = .Range(.Cells(.Rows.Count, "A").End(xlUp), "I1")
    
    With .Sort
      
      With .SortFields
      'Einstellungen für den Sort setzen
      
        .Clear
        
        '1. Spalte (dem Beispiel nach => Spalte A)
        .Add2 Key:=rngTable.Columns(1), _
              SortOn:=xlSortOnValues, _
              Order:=XlSortOrder.xlAscending, _
              DataOption:=XlSortDataOption.xlSortNormal
        '2. Spalte (dem Beispiel nach => Spalte H)
        .Add2 Key:=rngTable.Columns(8), _
              SortOn:=xlSortOnValues, _
              Order:=XlSortOrder.xlAscending, CustomOrder:=myCustomListIndex, _
              DataOption:=XlSortDataOption.xlSortNormal
        '3. Spalte (dem Beispiel nach => Spalte G)
        .Add2 Key:=rngTable.Columns(7), _
              SortOn:=xlSortOnValues, _
              Order:=XlSortOrder.xlDescending, _
              DataOption:=XlSortDataOption.xlSortNormal
              
      End With
      
      'diverse Einstellungen setzen
      .Orientation = xlTopToBottom
      .Header = XlYesNoGuess.xlYes
      .MatchCase = False
      .SortMethod = xlPinYin
      
      'der Bereich, auf den der Sort angewendet werden soll
      Call .SetRange(rngTable)
      
      'den Sort den Einstellungen nach anwenden
      Call .Apply
      
    End With
    
  End With
  
End Sub

 


Ihre Antwort
  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen
Thema: Name: Email:



  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen

Thema Datum  Von Nutzer Rating
Antwort
24.05.2020 15:16:35 Can
NotSolved
24.05.2020 18:25:16 Flotter Feger
NotSolved
24.05.2020 20:08:07 Gast83283
NotSolved
Blau Sortierfunktion
24.05.2020 21:33:06 Gast95919
NotSolved
25.05.2020 21:40:34 Gast32525
NotSolved