Live-Forum - Die aktuellen Beiträge
Datum
Titel
29.03.2024 13:14:12
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1528to1532
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
VBA ein/Ausblenden
04.12.2016 11:11:27
Sven
Hallo Leute,
ich versuche gerade per VBA ein Makro hin zu bekommen welches Zeilen ein ein ausblendet wenn bestimmte Zellen leer sind. Jedoch stelle ich mich zu blöd dafür an . Makro recorder und google haben nicht wirklich zu etwas geführt .
hier ein kleines Beispiel , wie ich es gerne hätte .
Wenn in AA5 nichts drinnen steht sollen die angegebenen Zeilen ausgeblendet werden und wenn etwas drinnen steht in AA5, sollen sie eingeblendet werden .
6:7,59:60,112:113,165:166,218:219,271:272 in Abhängigkeit von AA5
8:9,61:62,114:115,167:168,220:221,273:274 in Abhängigkeit von AA6
usw .
Das ganze muss ich 50 mal wiederholen bis AA55.
Hat jemand ne einfache Lösung ?
Gruß
Sven

13
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: VBA ein/Ausblenden
04.12.2016 11:18:13
Hajo_Zi
Hallo Sven,
Option Explicit
Sub Ausblenden()
Dim LoI As Long
For LoI = 5 To 55
Rows(LoI).EntireRow.Hidden = Range("AA" & LoI) = ""
Next LoI
End Sub


AW: VBA ein/Ausblenden
04.12.2016 11:22:47
Sven
Hallo Hajo,
danke für die schnelle Antwort .
Fragt dieser Code die Komplette reihe AA ab ? also von 1 bis ende ?
Weil einige Zeilen sollen immer stehen belieben .
Gruß
Sven
AW: VBA ein/Ausblenden
04.12.2016 11:25:24
Hajo_Zi
in der Aufgabe Stand 5 bis 55 und dafür ist der Code auch vorgesehen.
Gruß Hajo
Anzeige
AW: VBA ein/Ausblenden
04.12.2016 11:34:18
Sven
Der Code Funktioniert Super, jedoch blendet er die Zeilen 5 bis 55 aus und nicht die, die ich eigentlich angegeben habe .
Gruß
Sven
AW: VBA ein/Ausblenden
04.12.2016 13:24:50
Hajo_Zi
in der Aufgabe Stand
Wenn in AA5 nichts drinnen steht sollen die angegebenen Zeilen ausgeblendet werden und wenn  _
etwas drinnen steht in AA5, sollen sie eingeblendet werden .
6:7,59:60,112:113,165:166,218:219,271:272 in Abhängigkeit von AA5
8:9,61:62,114:115,167:168,220:221,273:274 in Abhängigkeit von AA6
usw .
Das ganze muss ich 50 mal wiederholen bis AA55.
und daran habe ich mich gehalten.
Gruß Hajo
Anzeige
AW: "6:7,59:60,112:113...."
04.12.2016 12:06:30
Gerd
Hallo Sven!
Sub PlanB()
Dim L As Long, Z As Range
Set Z = Range("6:7,59:60,112:113,165:166,218:219,271:272").EntireRow
For L = 0 To 40
Z.Offset(L).Hidden = (Cells(L + 5, 27) = "")
Next
End Sub
Gruß Gerd
AW: "6:7,59:60,112:113...."
04.12.2016 12:09:31
Sven
Hi Gerd,
Danke für die Antwort .
Der Code lässt sich beliebig ausweiten ?
Gruß
Sven
AW: "6:7,59:60,112:113...."
04.12.2016 12:17:18
Gerd
Hallo Sven,
ich antworte "JEIN!".
Denn du musst deine Abstände beibehalten u. in der Range(...) dürfen nicht mehr als 255 Zeichen stehen.
Gruß Gerd
AW: "6:7,59:60,112:113...."
04.12.2016 12:28:31
Sven
Hi Gerd ,
Danke für die Antwort .
Mehr soll in der Range nicht stehen , aber es sollen noch andere Ranges dadrunter kommen , die auf die fortlaufenden Zeilen in AA reagieren sollen .
Gruß
Sven
Anzeige
AW: "6:7,59:60,112:113...."
04.12.2016 12:35:13
Gerd
Hallo Sven,
am besten, du beschreibst deine Erweiterungen wie im ersten Beitrag in Worten, bevor du eine
nicht in vollem Umfang passende Antwort bekommst.
Gruß Gerd
AW: "6:7,59:60,112:113...."
04.12.2016 19:05:46
Sven
Hi Gerd,
ich habe das jetzt so eingetragen , aber leider geht das nicht wirklich . Es verschwinden zwar einige Zeilen und einige bleiben , aber wenn ich in den Zeilen bei AA etwas eintrage werden sie nicht eingeblendet .
Option Explicit
Private Sub Worksheet_Change(ByVal Target As Range)
Dim s%, m%
'Soll nur bei einer Eingabe in Spalte F wirksam werden:
If Target.Column >= 6 And Target.Column  2 Then
s = Left(.Value, Len(.Value) - 2)
m = Right(.Value, 2)
Else
s = .Value
m = 0
End If
.Value = s & ":" & m
End If
End With
End If
Dim L As Long, Z As Range
Set Z = Range("6:7,59:60,112:113,165:166,218:219,271:272").EntireRow
Set Z = Range("8:9,61:62,114:115,167:168,220:221,273:274").EntireRow
For L = 0 To 40
Z.Offset(L).Hidden = (Cells(L + 5, 27) = "")
Next
End Sub

Ich sag dir mal was ich vor habe, vielleicht stell ich mich zu blöd , oder hab nen Denkfehler :-)
6:7, 59:60, 112:113, 165:166,218:219,271:272 - sollen ausgeblendet werden wenn AA5 Leer ist und wenn was drinnen ist eingeblendet
und das ganze soll für weitere ReihenPaare funktionieren .
8:9, 61:62, 114:115, 167:168, 220:221, 273:274 - soll auf AA6 reagieren
10:11, 63:64, 116:117, 169:170,222:223, 275:276 - auf AA7
12:13, 65:66, 118:119, 171:172, 224:225, 277:278 - auf AA8
bis zum letzten paar.
54:55, 107:108, 160:161, 213:214, 266:267, 319:320 - auf AA29
Diese Paare sollen ein bzw ausgeblendet werden wenn nichts bzw Inhalt in der jeweiligen dazugehörigen Zelle in AA ist .
Gruß
Sven
Anzeige
AW: "6:7,59:60,112:113...."
04.12.2016 19:58:29
Gerd
Hallo Sven,
das kleine Einmaleins am Sonntag macht mir offenbar Probleme.
Ist es so besser?
Dim L As Long, Z As Range
Set Z = Range("6:7,59:60,112:113,165:166,218:219,271:272").EntireRow
For L = 0 To 50
Z.Offset(2 * L).Hidden = (Cells(L + 5, 27) = "")
Next

Gruß Gerd
AW: "6:7,59:60,112:113...."
04.12.2016 21:00:09
Sven
Hi Gerd,
an dir liegt es nicht , ich hab mich falsch ausgedrückt.
Ich habe mal eine Beispieldatei mit angehängt.
Er blendet jetzt zwar richtig aus, aber alles .
Gucke es dir einfach an was ich da verbrockt habe.
Gruß
Sven
https://www.herber.de/bbs/user/109874.xlsm
Anzeige

299 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige