Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1636to1640
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Reihenfolge Sheets in Array

Reihenfolge Sheets in Array
15.08.2018 18:21:36
Frank
Hallo zusammen,
weiß jemand, wie man die Reihenfolge von Sheets in einem Array bestimmen kann?
Ich habe aus einem Workbook mit ca. 20 Sheets 11 angesprochen, in einem Array zusammengefasst und als neue Datei und dann als PDF abgespeichert.
Dabei sortiert Excel die Sheets in der Reihenfolge, wie sie im Workbook liegen.
Gibt es wohl eine Möglichkeit die Reihenfolge zu ändern, ohne die Sheets im Workbook zu verschieben?
Viele Grüße

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Reihenfolge Sheets in Array
15.08.2018 18:25:42
ChrisL
Hi
Du könntest an ein zweites Array übergeben z.B.
Dim MyArray1(2) As Variant
Dim MyArray2(2) As Variant
MyArray2(0) = MyArray1(1)
MyArray2(1) = MyArray1(2)
MyArray2(2) = MyArray1(0)
Für alphabetisches Sortieren findest du fertige Scripts im Netz.
cu
Chris
AW: Reihenfolge Sheets in Array
15.08.2018 18:30:54
Frank
Hi Chris,
danke für den Denkanstoß. Es kann ja manchmal so einfach sein.
Setze ich morgen im Büro gleich mal um.
Besten Gruß
Das ändert nicht die Reihenfolge beim export! o.T.
15.08.2018 18:46:12
Sepp
 ABCDEF
1Gruß Sepp
2
3

Anzeige
stimmt, siehe Lösung von Sepp
15.08.2018 18:49:28
Sepp
Hatte mich nur auf das Array gestürzt und den Rest überlesen :)
AW: Reihenfolge Sheets in Array
15.08.2018 18:44:50
Sepp
Hallo Frank,
man könnte die Blätter in eine neue Datei kopieren, sortieren, exportieren und die Datei wieder löschen.
Sub test()
  Dim varSheets As Variant, lngIndex As Long

  On Error GoTo ErrorHandler

  With Application
    .ScreenUpdating = False
    .EnableEvents = False
    .AskToUpdateLinks = False
    .DisplayAlerts = False
    .Calculation = xlCalculationManual
  End With

  'Tabellenblätter in der gewünschten Reihenfolge! 
  varSheets = Array("Tabelle4", "Tabelle2", "Tabelle1")

  Sheets(varSheets).Copy

  With ActiveWorkbook
    For lngIndex = Ubound(varSheets) To 0 Step -1
      .Sheets(varSheets(lngIndex)).Move Before:=.Sheets(1)
    Next
    .ExportAsFixedFormat xlTypePDF, "D:\Forum\test.pdf"
    .Close False
  End With

ErrorHandler:

  If Err.Number <> 0 Then
    MsgBox "Fehler in Modul3" & vbLf & vbLf & "Prozedur:" & vbTab & "test" & vbLf & _
      "Nummer:" & vbTab & Err.Number & vbLf & "Meldung:" & vbTab & Err.Description & vbLf & _
      IIf(Erl, "Zeile:" & vbTab & Erl, ""), vbExclamation, "Fehler!"
    Err.Clear
  End If

  With Application
    .ScreenUpdating = True
    .EnableEvents = True
    .AskToUpdateLinks = True
    .DisplayAlerts = True
    .Calculation = xlCalculationAutomatic
  End With

End Sub

VBA/HTML-CodeConverter, AddIn für Office 2002-2016 - in VBA geschrieben von Lukas Mosimann. Projektbetreuung:RMH Software & Media

Code erstellt und getestet in Office 16 - mit VBAHTML 12.6.0


 ABCDEF
1Gruß Sepp
2
3

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige