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

leere Zellen ausblenden

leere Zellen ausblenden
02.12.2002 19:09:42
Matthias H.
Hallo,

ich habe in den VBA-Beispielen von Hans folgendes zum Ausblenden leerer Spalten gefunden:


StandardModule: basMain

Sub LeereSpalteAus()
Dim iCounter As Integer
Application.ScreenUpdating = False
For iCounter = 1 To 256
If WorksheetFunction.CountA(Columns(iCounter)) = 0 Then
Columns(iCounter).Hidden = True
End If
Next iCounter
Application.ScreenUpdating = False
End Sub

Das funktioniert auch, allerdings nur wenn ich die erste Zeile mit ' ausblende (wozu dient die denn?).
Ich möchte aber auch alle nichtbenutzten Zeilen ausblenden. Deshalb habe ich folgendes eingefügt:


Sub LeereSpalteAus()
Dim iCounter As Integer
Application.ScreenUpdating = False
For iCounter = 1 To 256
If WorksheetFunction.CountA(Columns(iCounter)) = 0 Then
Columns(iCounter).Hidden = True
End If
Next iCounter
For iCounter = 1 To 65536
If WorksheetFunction.CountA(Rows(iCounter)) = 0 Then
Rows(iCounter).Hidden = True
End If
Next iCounter
Application.ScreenUpdating = True
End Sub


Wenn ich das Makro dann starte, kommt ein Laufzeitfehler mit der Meldung "Überlauf". Wie groß ist denn der maximale Wert einer Integer Variablen?

Matthias







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

Betreff
Datum
Anwender
Anzeige
Re: leere Zellen ausblenden
02.12.2002 19:12:51
PeterW
Hallo Matthias,

das steht alles in der VBA-Hilfe. Für Zeilen muss die Variable als Long dimensioniert sein.

Gruß
Peter

Re: leere Zellen ausblenden
02.12.2002 19:25:28
Matthias H.
Danke Peter,

Ich habs gerade mal geändert. Mit Long klappt das, aber das dauert ganz schön bis der die 65536 Zeilen durch hat (ist immer noch nicht fertig). Gibt es denn beim Erstellen/Öffnen eines Arbeitsblattes die Möglichkeit die Zeilenanzahl festzulegen?
Matthias

Re: leere Zellen ausblenden
02.12.2002 19:33:49
PeterW
Hallo Matthias,

Du könntest mit der letzten benutzten Zeile anfangen, beispielsweise für Spalte A

Dim lgLetzte as Long
lgLetzte = [a65536].End(xlUp).Row

und fängst dann nicht bei 65536 sondern bei lgLetzte an.

Gruß
Peter

Anzeige
Re: leere Zellen ausblenden
02.12.2002 19:44:50
Matthias H.
Hallo Peter,
das ist eine gute Idee.
Momentan werden ja alle Zeilen/Spalten gelöscht in denen nichts steht. Kann man nicht realisieren, daß erst diejenigen gelöscht werden nach denen nichts mehr kommt?
Beispiel Zeile 1-3 leer, in Zeilen 3 und 6 ist ein Eintrag --> alle Zeilen ab 7 löschen...


Re: leere Zellen ausblenden
02.12.2002 20:14:00
PeterW
Hallo Matthias,

ermittle mit dem schon beschriebenen Ansatz die letzte benutzte Zelle und dann

Rows(lgLetzte & ":65536").Hidden = True

Gruß
Peter

310 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige