Hab mal mein script reingestellt vielleicht findet ihr ja den Fehler, weil ich finde nix oder bin blind.
Mein fehler ist das er nicht die beiden Spalten sortiert zuerst die erste nach Zahlen aufsteigend und im Anschluss die 2te Spalte nach dem Alphabet wenn die gleichen Zahlen vorher waren.
# Quelldateien $quelle = 'D:\Excel\*.csv' # Zieldatei $ziel = "D:\Excel\.xlsx" # Excel Objekt $objExcel = New-Object -Com Excel.Application # platzhalter für leere Parameter $n = [system.Reflection.Missing]::Value # Neue Mappe öffnen $wb = $objExcel.Workbooks.Add() # Excel anzeigen $objExcel.Visible = $true # Meldungen abschalten $objExcel.DisplayAlerts = $false # Ale CSV-Dateien des Ordners in ein neues Sheet importieren #initiale Anzahl an sheets speichern $initcount = [int]$wb.Worksheets.Count gci $quelle -File | sort CreationTime -Descending | select -First 4 | %{ $ws = $wb.Worksheets.Add($n,$wb.Worksheets.Item($wb.Worksheets.Count),$n,$n) $qt = $ws.QueryTables.Add("TEXT;$($_.Fullname)",$ws.Range("A1")) $qt.Name = "Import" $qt.FieldNames = $true $qt.AdjustColumnWidth = $true $qt.TextFilePlatform = 1252 $qt.TextFileStartRow = 1 $qt.TextFileParseType = 1 $qt.TextFileSemicolonDelimiter = $true $qt.Refresh($false) $qt.Delete() } # Excel anzeigen $ws = $wb.Sheets.Item(4) # Autofilter $ws.Range("A:Z").Autofilter(6,"=SRV") $ws.Range("A:Z").Autofilter(3,"=Abteilung") #CHECK # Format Conditions hinzufügen $condition = $ws.Range("P:P").FormatConditions.Add(1, 3, "100") $condition.Interior.Color = 65280 # Grün $condition = $ws.Range("P:P").FormatConditions.Add(1, 3, "0-49") $condition.Interior.Color = 255 # Rot #CHECK $condition = $ws.Range("P:P").FormatConditions.Add(1, 3, "50-99") $condition.Interior.Color = 65535 # Gelb #Spalten Sortieren von kleinsten zum höchsten Range("A2:N4266").Sort Range("N2"), xlAscending, , , , , , xlNo Range("A2:N4266").Sort Range("A2"), xlAscending, , , , , , xlNo #Name Mappe ändern $ws.Name = "S11"