Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Warum wird dieser Makro nicht in allen Sheets ausg

Forumthread: Warum wird dieser Makro nicht in allen Sheets ausg

Warum wird dieser Makro nicht in allen Sheets ausg
01.08.2006 14:19:05
Peter
Hallo
Kann mir jemand sagen, weshalb dieser Makro nur im aktiven Worksheet, nicht aber in allen übrigen Worksheets der aktiven Datei ausgeführt wird?
Danke, Peter
Option Explicit

Sub versteckte_loeschen()
'versteckte Spalten und Zeilen löschen
'in Workbook löschen
Dim x As Integer
Dim r As Range
For x = 1 To Sheets.Count
For Each r In Rows(1).Cells
If r.Width < 1 Then r.EntireColumn.Delete
Next
For Each r In Columns(1).Cells
If r.Height < 1 Then r.EntireRow.Delete
Next
Next x
End Sub

Anzeige

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Warum wird dieser Makro nicht in allen Sheets ausg
01.08.2006 14:28:20
Bertram
Hallo Peter,
du sprichst deine Worksheets auch gar nicht an.
Es sollte wohl lauten
For Each r In Sheets(x).Rows(1).Cells
...
und entsprechendes bei Columns.
Gruß
Bertram
AW: Warum wird dieser Makro nicht in allen Sheets ausg
01.08.2006 14:28:54
Heiko
Hallo Peter,
weil du die Sheets ja garnicht ansprichst, verusch mal dies (ungetestet) .

Sub versteckte_loeschen()
'versteckte Spalten und Zeilen löschen
'in Workbook löschen
Dim x As Integer
Dim r As Range
For x = 1 To Sheets.Count
For Each r In Sheets(x).Rows(1).Cells
If r.Width < 1 Then r.EntireColumn.Delete
Next
For Each r In Sheets(x).Columns(1).Cells
If r.Height < 1 Then r.EntireRow.Delete
Next
Next x
End Sub

Gruß Heiko
PS: Rückmeldung wäre nett !
Anzeige
AW: Warum wird dieser Makro nicht in allen Sheets ausg
01.08.2006 14:50:26
Luschi
Hallo Heiko,
mit Sheets(x) kann man schnell Schiffbruch erleiden, da dieser Container eine Zusammenfassung aller Blatt-Sorten einer Arbeitsmappe ist. Dazu gehören:
- Tabellenblatt (Worksheet)
- Diagramm
- MS-Excel 4.0-Makrovorlagen
- internationale Makrovorlagen
- MS Excel 5.0-Dialog
Aber ist sogar in der Excel-Hilfe falsch beschrieben:
"Die Sheets-Auflistung kann Chart-oder Worksheet-Objekte enthalten."
Deshalb sollte man die Worksheets-Auflistung benutzen, wenn es um Range & Cells geht.
Gruß von Luschi
aus klein-Paris
Anzeige
AW: Warum wird dieser Makro nicht in allen Sheets ausg
01.08.2006 14:32:18
Galenzo
ja. ich.
Ist ja schön, daß du alle Sheets durchzählst.
Dann solltest du das jeweilige Sheet auch ansprechen.
Rows(1).Cells betrifft das aktive Sheet!
/Galenzo
AW: Warum wird dieser Makro nicht in allen Sheets ausg
01.08.2006 14:34:10
Luschi
Hallo Peter,
bei Range und Cells sollte man immer mit Adresse und Hausnummer arbeiten; soll heißen, den gemeinten Tabellennamen mit angeben. So sollte es funktionieren:
Sub versteckte_loeschen_1()
'versteckte Spalten und Zeilen löschen
'in Workbook löschen
Dim x As Integer, r As Range
For x = 1 To ThisWorkbook.Worksheets.Count
For Each r In ThisWorkbook.Worksheets(x).Rows(1).Cells
If r.Width < 1 Then r.EntireColumn.Delete
Next r
For Each r In ThisWorkbook.Worksheets(x).Columns(1).Cells
If r.Height < 1 Then r.EntireRow.Delete
Next r
Next x
End Sub
o d e r  so:
Sub versteckte_loeschen_2()
'versteckte Spalten und Zeilen löschen
'in Workbook löschen
Dim r As Range, ws As Worksheet
For Each ws In ThisWorkbook.Worksheets
For Each r In ws.Rows(1).Cells
If r.Width < 1 Then r.EntireColumn.Delete
Next r
For Each r In ws.Columns(1).Cells
If r.Height < 1 Then r.EntireRow.Delete
Next
Next ws
End Sub
Gruß von Luschi
aus klein-Paris
Anzeige
AW: Warum wird dieser Makro nicht in allen Sheets ausg
01.08.2006 21:07:29
Peter
Hallo Luschi
Herzlichen Dank für deine Hilfe.
Was mir noch nicht klar ist:
Wenn ich die Zeilen 1:10, sowie die Spalten A:J ausblende und den Makro laufen lasse, ist dann F6 das erste sichtbare Feld, das heisst, dass A:E und 1:5 immer noch ausgeblendet sind. Nach dem nächsten Ablaufen sehe ich als erstes Feld C3 und dann B2. Erst nach dem 4 Ablaufen sehe ich die Zelle A1 wieder.
Als Veruch habe ich ein leeres Workbook mit verschiedenen Worksheets genommen.
Gruss, Peter
Anzeige
;

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige