HERBERS Excel-Forum - das Archiv
VBA - Alle Sheets auswählen
Udo

Hallo,
ich habe ein dringendes Problem, habe gestern auch schon viele Foren durchsucht aber leider nichts gefunden.
Gibt es im Excel-Vba einen Befehl mit dem ich alle Sheets eines Workbooks auswählen kann ?
Das Problem besteht darin, dass das Workbook immer eine verschiedene Anzahl an Sheets hat und diese Sheets auch immer verschiedene Namen haben.
Ich habe keine Ahnung wie ich alle Sheets des Workbooks auswählen kann.
Vielen Dank für die Hilfe
Udo

ThisWorkbook.Sheets.Select o.T
ransi

ransi
AW: ThisWorkbook.Sheets.Select o.T
Udo

Vielen Dank !
Super, es funktioniert !
Danke
Udo

AW: ThisWorkbook.Sheets.Select o.T
Udo

Hallo,
meine Freude ware etwas zu früh.
In einem neuen Workbook hat der Befehl zwar funktioniert, aber in dem eigentlichen Sheet habe ich folgenden Fehler erhalten:
Lautzeitfehler 1004
Die MEthode "Select" für das Objekt "Sheets" ist fehlgeschlagen
Warum nur...
Danke
..Warum nur...VBA-gut..
robert

hi,
schau dir Tino's Lösung an, bzgl.ausgeblendeter Blätter
gruß
robert
AW: ..Warum nur...VBA-gut..
Udo

Gleiches Problem,
sobald select ins Spiel kommt ist es in der Datei vorbei.
Die Befehle funktionieren in jeder anderen Datei.
In der Datei sind leider schon sehr viele andere makros enthalten (leider nicht von mir), ich denke es hängt irgendwie damit zusammen, kann das sein ?
Vielen Dank
udo
AW: ..Warum nur...VBA-gut..
Tino

Hallo,
versuche es mal und stelle den Code zwischen
 Application.EnableEvents = False
Application.EnableEvents = True
also so.
Dim meAr() As String
Dim i%, ii%
Application.EnableEvents = False
With ThisWorkbook
ReDim Preserve meAr(.Sheets.Count)
For i = 1 To .Sheets.Count
If .Sheets(i).Visible = xlSheetVisible Then
meAr(ii) = .Sheets(i).Name
ii = ii + 1
End If
Next i
ReDim Preserve meAr(ii - 1)
.Sheets(meAr).Select
End With
Application.EnableEvents = True
Sonst hilft nur ein Beispiel.
Gruß Tino
AW: VBA - Alle Sheets auswählen
Hajo_Zi

Hallo Udo,
Alle Blätter per VBA markieren, alle Tabellen markieren
Sub AlleBlätterMarkieren()
Dim z As Long
Dim Letztes As Long
Dim lArray() As Long
Letztes = ThisWorkbook.Worksheets.Count
ReDim lArray(1 To Letztes)
For z = 1 To Letztes
lArray(z) = z
Next z
ThisWorkbook.Worksheets(lArray).Select
End Sub

von Bernd Held
Sheets().Select
Von André
Gruß Hajo
wenn ausgeblendete Tabellen dabei sind...
Tino

Hallo,
versuche es mal hiermit.
Dim meAr() As String
Dim i%, ii%
With ThisWorkbook
ReDim Preserve meAr(.Sheets.Count)
For i = 1 To .Sheets.Count
If .Sheets(i).Visible = xlSheetVisible Then
meAr(ii) = .Sheets(i).Name
ii = ii + 1
End If
Next i
ReDim Preserve meAr(ii - 1)
.Sheets(meAr).Select
End With
Gruß Tino