Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
784to788
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
784to788
784to788
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

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

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
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
Anzeige
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

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige