Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

VBA - Zeilen einblenden/ ausblenden, wenn Bedingung erfüllt
#11
Hallo Bravolus,

lösch Deinen bisherigen Code und füge folgenden ein:


Code:
Private Sub Worksheet_Change(ByVal Target As Range)
 Dim x, y
 If Target.Count = 1 Then
   If Target.Address(0, 0) = "A6" Or Target.Address(0, 0) = "A9" Then
     Application.ScreenUpdating = False
     Rows("15:239").EntireRow.Hidden = True
     x = Application.Match(Range("A6"), Range("A15:A215"), 0)
     If IsNumeric(x) Then
       Rows(x + 14 & ":" & x + 38).EntireRow.Hidden = False
     End If
     Rows("242:465").EntireRow.Hidden = True
     y = Application.Match(Range("A9"), Range("A242:A464"), 0)
     If IsNumeric(y) Then
       Rows(y + 241 & ":" & y + 265).EntireRow.Hidden = False
     End If
     Application.ScreenUpdating = True
   End If
 End If
End Sub
Gruß Atilla
Antworten Top
#12
Hallo,

ich hatte doch gesagt: "mit wenigen Zeilen Code..."

deswegen und weil im ersten unnötiges drin ist, nimm folgenden Code:


Code:
Private Sub Worksheet_Change(ByVal Target As Range)
 Dim x, y
 If Target.Count = 1 Then
   If Target.Address(0, 0) = "A6" Or Target.Address(0, 0) = "A9" Then
     Application.ScreenUpdating = False
     Rows("15:465").EntireRow.Hidden = True
     x = Application.Match(Range("A6"), Range("A15:A215"), 0)
     y = Application.Match(Range("A9"), Range("A242:A464"), 0)
     If IsNumeric(x) Then Rows(x + 14 & ":" & x + 38).EntireRow.Hidden = False
     If IsNumeric(y) Then Rows(y + 241 & ":" & y + 265).EntireRow.Hidden = False
     Application.ScreenUpdating = True
   End If
 End If
End Sub
Gruß Atilla
[-] Folgende(r) 1 Nutzer sagt Danke an atilla für diesen Beitrag:
  • Bravolus
Antworten Top
#13
Hallo Atilla.
Du bist ein Genie. Deine Programmierung funktioniert einwandfrei. Ich danke dir vielmals. Du hast mir extrem weitergeholfen :)  Heart
Darauf sollte ich dir ein Bier ausgeben :15:

Liebe Grüße,

Bravolus
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste