Hallo liebe Excel Freunde
Ich möchte gerne Zellen aus- und einblenden
Habe auf Tabelle1
A2 "Name"
A3 "Mustermann1"
A4 "Mustermann2"
A5 "Mustermann3"
A6 "Mustermann4"
A7 "Mustermann5"
Habe auf Tabelle2
A2 "Name" B2 "x Einstellung"
A3 "Mustermann1" B3 ""
A4 "Mustermann2" B4 ""
A5 "Mustermann3" B5 ""
A6 "Mustermann4" B6 ""
A7 "Mustermann5" B7 ""
Wenn ich auf Tabelle2 B3 ein X reinstelle soll die zeile 3 auf tabelle 1 sichtbar sein ansonsten ausgeblendet.
Das selbe auch bei A4 - A7.
Vielen Dank für euere Hilfe
Narakort
Hallo Narakort,
folgender Code kommt in das schon vorhandene VBA-Modul der Tabelle2:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim varB As Variant
Dim i As Long
If Not Application.Intersect(Target, Columns(2)) Is Nothing Then
varB = Range(Cells(1), Target.CurrentRegion).Value
For i = 2 To UBound(varB)
Tabelle1.Rows(i).Hidden = Not LCase(varB(i, 2)) = "x"
Next i
End If
End Sub
Gruß Uwe
Hallo und erstmal danke für die schnelle Antwort.
Leider hat es nicht so geklabt wie ich es wollte. Habe daher die excel Datei mal reingestellt.
Es soll ausschließlich mit der Mappe Dienstplan gesamt gearbeitet werden. Was ich soweit alles hinbekommen habe. Das einzige was machen möchte ist das wenn ich in der Spalte an, ao und ap ein X in an der passene Person reinstelle. Das die Person auch in denn passene Objekt ist. Und ansonsten alle anderen zeilen weg sind.
Vielen Dank für euere Unterstützung
Simon
Hallöchen,
doch, der Code klappt so, wie Du es in #1 wolltest.
Erstmal danke für die Hilfe habe das Problem zwar nicht lösen können. weil ich eindeutig zu blöd bin ,:22: da mein wissen mit VBA leider nicht vorhanden ist :22: .
gibt es noch eine Möglichkeit ohne VBA das zu lösen.
Gruss Narakort
Hallo,
hier mal der Code. Du musst ihn in das Codemodul vom Dienstplan-Blatt einfügen, schaffst Du oder? Schaue mal in unserem Beispielbereich Workshops und Anleitungen, da hast DU 2 Beiträge, unter anderem den
Excel-Word-Makrorekorder
Code:
Option Explicit
Private Sub Worksheet_Change(ByVal Target As Range)
'Wenn Bereich AN14:AP34 betroffen ist, dann
If Not Intersect(Target, Range("AN14:AP34")) Is Nothing Then
'Variablendeklarationen
Dim varB As Variant
Dim i As Long, j As Long
'Uebernahme der EIntraege von Spalte 40 bis 42
varB = Range("AN14:AP34").Value
'Schleife ueber "Spalten"
For j = 1 To 3
'Schleife ueber "Zeilen"
For i = 1 To UBound(varB)
'Zeile auf Zielobjekt j (1, 2 oder 3) ausblenden wenn kein x eingetragen
Sheets("Objekt " & j).Rows(i + 13).Hidden = Not LCase(varB(i, j)) = "x"
'Ende Schleife ueber "Zeilen"
Next i
'Ende Schleife ueber "Spalten"
Next j
'Ende Wenn Bereich AN14:AP34 betroffen ist, dann
End If
End Sub
Super danke hat alles geklabt.
Dank an euch beiden.
Gruss Narakort
P.s. werden jetzt mir ein VBA Kurs zu genüge tun