'Unternehmensliste erstellen
Workbooks.Add
Anzahl = ActiveWorkbook.Sheets.Count
For i = 1 To Anzahl
Sheets("Tabelle" & i).Select
Select Case i
Case Is > 1
Sheets("Tabelle" & i).Select
ActiveWindow.SelectedSheets.Delete
End Select
Next i
'Daten vom Generator zu Unternehmensliste übertragen
ActiveWorkbook.Sheets("Tabelle1").Range("1:1").Value = ThisWorkbook.Sheets("Format Unt").Range(" _
1:1").Value
Set wksT = ActiveWorkbook.Sheets("Tabelle1")
lngT = 1
With ThisWorkbook.Sheets("Generator")
Do While .Cells(lngG + 1, 1) <> ""
lngG = lngG + 1
strAG = .Cells(lngG, 19)
strN = .Cells(lngG, 21)
lngT = lngT + 1
wksT.Cells(lngT, 2) = .Cells(lngG, 18).Value
wksT.Cells(lngT, 3) = strAG
wksT.Cells(lngT, 8) = "Unternehmen HH Modell 2008; Unternehmen ALLGEMEIN"
wksT.Cells(lngT, 10) = .Cells(lngG, 23).Value
Do While strAG = .Cells(lngG + 1, 19) And .Cells(lngG + 1, 1) <> ""
lngG = lngG + 1
strN = strN & "; " & .Cells(lngG, 21)
Loop
wksT.Cells(lngT, 1) = strN
Loop
End With
'Unternehmensliste formatieren und speichern
ActiveWorkbook.Sheets("Tabelle1").Cells.EntireColumn.AutoFit
ActiveWorkbook.Sheets("Tabelle1").Sort Key1:=Range("C2"), Order1:=xlAscending, Key2:=Range(" _
B2") , Order2:=xlAscending, Header:=xlNo, OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom
ActiveWorkbook.SaveAs Filename:=ThisWorkbook.Path & "/" & Format(Date, "YYYY/MM/DD") & " _
_Listengenerator - Untern.xls", FileFormat _
:=xlNormal, Password:="", WriteResPassword:="", ReadOnlyRecommended:= _
False, CreateBackup:=False
ActiveWorkbook.Close
so wie das jetzt in Deinem Code steht, kommt der SortKey aus Zelle C2 in der aktuell aktiven _
Tabelle, was nicht notwendigerweise Tabellle1 sein muss.
Aber den Quelltext davor "ActiveWorkbook.Sheets("Tabelle1").Cells.EntireColumn.AutoFit" führt er ja noch ohne Probleme aus, obwohl da auch die aktive Tabelle angesprochen wird. Und schon direkt danach meckert er aber über dien Sortierungsquelltext. Es geht da immer noch in der selben Tabelle umher.
Gib mal Workbook und Tabelle mit an und versuchs nochmal.
Da müßte ich ja mal fragen wie das geht, da ich dieses Workbook zu dem Zeitpunkt gerade erst im Makro erzeugt habe und es daher noch keinen spezifischen Namen hat. Oder sehe ich da etwas falsch?
Ansonsten enthält die Fehlermeldung ja einige Hinweise auf die mögliche Ursache. Bist Du dem _
mal nachgegangen?
Mit der Fehlermeldung kann ich leider mit meinem beschränktem Wissen nichts anfangen. Auch nicht mit der Hilfe dazu.
With ActiveWorkbook.Sheets("Tabelle1")
.Range("a2").Sort Key1:=.Range("C2"), Order1:=xlAscending, Key2:=.Range("B2"), Order2:= _
xlAscending, Header:=xlNo, OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom
End With
Gruß
Rudi