Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
860to864
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
860to864
860to864
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Leere Zeilen bzw. Spalten ausblenden

Leere Zeilen bzw. Spalten ausblenden
17.04.2007 17:00:22
Fritz_W
Hallo VBA-Spezialisten,
der nachfolgende Code blendet in einer Tabelle leere Zeilen und Spalten eines angegebenen Bereiches aus. Den Code habe ich - vor längerer Zeit - hier im Forum von Sepp Ehrensberger erhalten.
In der aktuellen Tabelle bezieht ist der "zu überwachende Bereich" C5:N63
Wie muss der Code geändert werden, wenn im Bereich C5:N63 die Zeilen 9, 29 und 49 in jedem Fall eingeblendet bleiben sollen, auch wenn diese in den Spalten C bis N ausschließlich leere Zellen enthalten?
Vielen Dank für eure Unterstützung
mfg
Fritz
Option Explicit
Public blnhidden As Boolean

Sub zeilen_spalten_aus_ein()
Dim rng As Range
Dim n As Integer
Set rng = Range("c5:n63")
Application.ScreenUpdating = False
If Not blnhidden Then
blnhidden = True
For n = 1 To rng.Rows.Count
If Application.CountIf(rng.Rows(n), "") = rng.Columns.Count Then rng.Rows(n).Hidden = blnhidden
Next
For n = 1 To rng.Columns.Count
If Application.CountIf(rng.Columns(n), "") = rng.Rows.Count Then rng.Columns(n).Hidden =  _
blnhidden
Next
Else
blnhidden = False
rng.Rows.Hidden = blnhidden
rng.Columns.Hidden = blnhidden
End If
Application.ScreenUpdating = True
End Sub


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

Betreff
Datum
Anwender
Anzeige
AW: Leere Zeilen bzw. Spalten ausblenden
17.04.2007 17:13:00
Peter
Hallo Fritz,
versuch es einmal so:


Option Explicit
Sub zeilen_spalten_aus_ein()
Dim rng  As Range
Dim n    As Integer
   Application.ScreenUpdating = False
   Set rng = Range("C5:N63")
   If Not blnhidden Then
      blnhidden = True
      For n = 1 To rng.Rows.Count
         If n <> 9 And n <> 29 And n <> 49 Then
            If Application.CountIf(rng.Rows(n), "") = _
               rng.Columns.Count Then rng.Rows(n).Hidden = blnhidden
         End If
      Next n
      For n = 1 To rng.Columns.Count
         If n <> 9 And n <> 29 And n <> 49 Then
            If Application.CountIf(rng.Columns(n), "") = _
               rng.Rows.Count Then rng.Columns(n).Hidden = blnhidden
         End If
      Next n
    Else
      blnhidden = False
      rng.Rows.Hidden = blnhidden
      rng.Columns.Hidden = blnhidden
   End If
   Application.ScreenUpdating = True
End Sub 


Gruß Peter

Anzeige
AW: Leere Zeilen bzw. Spalten ausblenden
17.04.2007 17:20:37
Fritz_W
Hallo Peter,
zunächst einmal vielen Dank für Deine Unterstützung.
Ich habe deinen Code getestet, er bringt genau das gleiche "Ergebnis" wie der bisherige Code,
d.h. die betreffenden Zeilen werden - obwohl Sie in den relevanten Spalten C bis N in den Zeilen 9, 29 und 49 nur leere Zellen enthalten ausgeblendet.
Gruß
Fritz

AW: Leere Zeilen bzw. Spalten ausblenden
17.04.2007 19:23:53
Kurt

Sub zeilen_spalten_aus_ein()
Dim rng As Range
Dim n As Integer
Set rng = Range("c5:n63")
Application.ScreenUpdating = False
If Not blnhidden Then
blnhidden = True
For n = 1 To rng.Rows.Count
If Application.CountIf(rng.Rows(n), "") = rng.Columns.Count Then rng.Rows(n).Hidden = blnhidden
Next
For n = 1 To rng.Columns.Count
If Application.CountIf(rng.Columns(n), "") = rng.Rows.Count Then rng.Columns(n).Hidden = _
blnhidden
Next
Else
blnhidden = False
rng.Rows.Hidden = blnhidden
rng.Columns.Hidden = blnhidden
End If
[a9,a19,a49].EntireRow.Hidden = False
Application.ScreenUpdating = True
End Sub


mfg Kurt

Anzeige
Gelöst: Kurts Code funktioniert perfekt!
17.04.2007 20:01:17
Fritz_W
Hallo Kurt,
auch Dir vielen Dank für die Unterstützung.
Zunächst war ich verwundert, dass Dein Code bezüglich Zeile 9 und 49 wie gewünscht funktionierte, jedoch nicht bezogen auf Zeile 29. Erst beim genauen Hingucken habe ich festgestellt, dass Du dich im Code wohl verschrieben hast, Zeile 19 statt 29. Nach der Änderung funktioniert die Sache perfekt!
Mein Kompliment und nochmaligen Dank!
Schönen Gruß
Fritz

AW: Leere Zeilen bzw. Spalten ausblenden
17.04.2007 19:30:00
Luschi
Hallo Fritz,
bei mir klappt das so:

Sub zeilen_spalten_aus_ein()
Dim rng  As Range
Dim n    As Integer
Application.ScreenUpdating = False
Set rng = ActiveSheet.Range("C5:N63")
For n = 1 To rng.Rows.Count
If Application.CountIf(rng.Rows(n), "") = rng.Columns.Count Then
If InStr(1, "*9*29*49*", CStr(n + 4), vbTextCompare) = 0 Then
rng.Rows(n).EntireRow.Hidden = True
Else
rng.Rows(n).EntireRow.Hidden = False
End If
Else
rng.Rows(n).EntireRow.Hidden = False
End If
Next n
Application.ScreenUpdating = True
End Sub

Gruß von Luschi
aus klein-Paris

Anzeige
AW: Leere Zeilen bzw. Spalten ausblenden
17.04.2007 19:52:41
Fritz_W
Hallo Luschi,
vielen Dank für Deine Unterstützung.
Zu Deinem Code: Das Ausblenden funktioniert bei mir wie gewünscht, jedoch werden die ausgeblendeten Zeilen nach erneuter Betätigung nicht wieder eingeblendet. Funktioniert das bei Dir?
Gruß
Fritz

316 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige