Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1272to1276
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
Inhaltsverzeichnis

MAKRO Ein/Ausblenden von Zeilen

MAKRO Ein/Ausblenden von Zeilen
Zeilen
Hallo zusammen
Heute brauche ich mal die Meister der Makroprogrammierung…
Folgendes Problem:
Im ersten Excel-Blatt habe ich Zeilen mit einem Bezug zu einem anderen Registerblatt.
Nun möchte ich, dass wenn ich in der entsprechenden Zelle im entsprechenden Registerblatt einen bestimmten Wert eingebe die dazugehörende Zeile im ersten Registerblatt verschwindet.
Ganz Konkret
Userbild
B8 ='1'!D$1
B9 ='2'!D$1
usw…
B8 bis B52 sind jeweils die Zeilen die ich ein resp. ausblenden will, wenn ich in der entsprechenden Registerkarte (Zelle D1) die Zahl 1; 2; 3; usw. eingetragen habe = Ausgeblendet; wenn der Systemname eingetragen ist soll die Zeile eingeblendet sein.
z.B. im Registerblatt 1 (D1)
Userbild
= Zeile 8 im Registerblatt Frontpage Eingeblendet
Userbild
= Zeile 8 im Registerblatt Frontpage Ausgeblendet
Dazu habe ich folgendes Makro im Registerblatt 1 erstellt:
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$B$8" Then _
Range("A8").EntireRow.Hidden = Target.Text = "1"
If Target.Address = "$B$9" Then _
Range("A9").EntireRow.Hidden = Target.Text = "2"
If Target.Address = "$B$10" Then _
Range("A10").EntireRow.Hidden = Target.Text = "3"
If Target.Address = "$B$11" Then _
Range("A11").EntireRow.Hidden = Target.Text = "4"
If Target.Address = "$B$12" Then _
Range("A12").EntireRow.Hidden = Target.Text = "5"
If Target.Address = "$B$13" Then _
Range("A13").EntireRow.Hidden = Target.Text = "6"
If Target.Address = "$B$14" Then _
Range("A14").EntireRow.Hidden = Target.Text = "7"
If Target.Address = "$B$15" Then _
Range("A15").EntireRow.Hidden = Target.Text = "8"
If Target.Address = "$B$16" Then _
Range("A16").EntireRow.Hidden = Target.Text = "9"
If Target.Address = "$B$17" Then _
Range("A17").EntireRow.Hidden = Target.Text = "10"
If Target.Address = "$B$18" Then _
Range("A18").EntireRow.Hidden = Target.Text = "11"
If Target.Address = "$B$19" Then _
Range("A19").EntireRow.Hidden = Target.Text = "12"
If Target.Address = "$B$20" Then _
Range("A20").EntireRow.Hidden = Target.Text = "13"
If Target.Address = "$B$21" Then _
Range("A21").EntireRow.Hidden = Target.Text = "14"
If Target.Address = "$B$22" Then _
Range("A22").EntireRow.Hidden = Target.Text = "15"
If Target.Address = "$B$23" Then _
Range("A23").EntireRow.Hidden = Target.Text = "16"
If Target.Address = "$B$24" Then _
Range("A24").EntireRow.Hidden = Target.Text = "17"
If Target.Address = "$B$25" Then _
Range("A25").EntireRow.Hidden = Target.Text = "18"
If Target.Address = "$B$26" Then _
Range("A26").EntireRow.Hidden = Target.Text = "19"
If Target.Address = "$B$27" Then _
Range("A27").EntireRow.Hidden = Target.Text = "20"
If Target.Address = "$B$28" Then _
Range("A28").EntireRow.Hidden = Target.Text = "21"
If Target.Address = "$B$29" Then _
Range("A29").EntireRow.Hidden = Target.Text = "22"
If Target.Address = "$B$30" Then _
Range("A30").EntireRow.Hidden = Target.Text = "23"
If Target.Address = "$B$31" Then _
Range("A31").EntireRow.Hidden = Target.Text = "24"
If Target.Address = "$B$32" Then _
Range("A32").EntireRow.Hidden = Target.Text = "25"
If Target.Address = "$B$33" Then _
Range("A33").EntireRow.Hidden = Target.Text = "26"
If Target.Address = "$B$34" Then _
Range("A34").EntireRow.Hidden = Target.Text = "27"
If Target.Address = "$B$35" Then _
Range("A35").EntireRow.Hidden = Target.Text = "28"
If Target.Address = "$B$36" Then _
Range("A36").EntireRow.Hidden = Target.Text = "29"
If Target.Address = "$B$37" Then _
Range("A37").EntireRow.Hidden = Target.Text = "30"
If Target.Address = "$B$38" Then _
Range("A38").EntireRow.Hidden = Target.Text = "31"
If Target.Address = "$B$39" Then _
Range("A39").EntireRow.Hidden = Target.Text = "32"
If Target.Address = "$B$40" Then _
Range("A40").EntireRow.Hidden = Target.Text = "33"
If Target.Address = "$B$41" Then _
Range("A41").EntireRow.Hidden = Target.Text = "34"
If Target.Address = "$B$42" Then _
Range("A42").EntireRow.Hidden = Target.Text = "35"
If Target.Address = "$B$43" Then _
Range("A43").EntireRow.Hidden = Target.Text = "36"
If Target.Address = "$B$44" Then _
Range("A44").EntireRow.Hidden = Target.Text = "37"
If Target.Address = "$B$45" Then _
Range("A45").EntireRow.Hidden = Target.Text = "38"
If Target.Address = "$B$46" Then _
Range("A46").EntireRow.Hidden = Target.Text = "39"
If Target.Address = "$B$47" Then _
Range("A47").EntireRow.Hidden = Target.Text = "40"
If Target.Address = "$B$48" Then _
Range("A48").EntireRow.Hidden = Target.Text = "41"
If Target.Address = "$B$49" Then _
Range("A49").EntireRow.Hidden = Target.Text = "42"
If Target.Address = "$B$50" Then _
Range("A50").EntireRow.Hidden = Target.Text = "43"
If Target.Address = "$B$51" Then _
Range("A51").EntireRow.Hidden = Target.Text = "44"
If Target.Address = "$B$52" Then _
Range("A52").EntireRow.Hidden = Target.Text = "45"
End Sub
Nun mein Problem:
Wenn ich in der entsprechenden Registerkarte den Systemnamen, resp. die Zahl (zum Ausblenden) eingebe und mit enter bestätige blendet es im ersten Blatt die Zeile nicht ein oder aus.
Wo mache ich den Überlegungsfehler? Oder wie muss ich das Makro programmieren, dass das funktioniert?
Besten Dank für eure Hilfe.
Gerhard

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: MAKRO Ein/Ausblenden von Zeilen
14.08.2012 12:14:29
Zeilen
Hallo,
die Neuberechnung einer Formel löst das Change-Event nicht aus.
Du musst also das Change-Event der jeweiligen Tabelle abgreifen.
Besser noch in DieseArbeitsmappe:
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
If Target.Address = "$D$1" Then
If Sh.Index > 1 Then
Sheets(1).Rows(Sh.Name + 7).Hidden = Target = CInt(Sh.Name)
End If
End If
End Sub

Gruß
Rudi
Anzeige

299 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige