Fehler in Codeprozedur
01.04.2007 11:50:32
Torge
Kann jemand helfen?
Beziehe mich noch einmal auf meinen Beitrag in https://www.herber.de/cgi-bin/forum/call_forum.pl
Habe den Code jetzt so umgebastelt funktioniert aber leider immer noch nicht. Bei Wert A in Zelle B1 werden die entsprechenden Button eingeblendet. Andere Button die sich in den Tabellenblättern befinden nicht. Steht nun der Wert B in Zelle B1, dann werden aber auch nur die Button wie bei A eingeblendet
aber nicht wie bei Wert B vorgesehen. Hintergrund ist, das dass einblenden der Button in Abhängigkeit des in Zelle B1 stehenden Wertes und der gewählten Auswahl zb. "?" oder einer anderen Auswahl erfolgen soll. Also nur, wenn der Zellwert in B1 und der gewählten Auswahl übereinstimmen.
Private Sub Worksheet_Change(ByVal Target As Range)
Application.ScreenUpdating = False
On Error Resume Next
'Einblenden von Button in Abhängikeit der PW-Eingabe
Const TZ = "_" ' Trennzeichen
Dim s(50) As String, i%, n, z
' Übereinstimmungen B1 K7
For n = 1 To 46 Step 5
z = z + 1
s(n + 0) = Chr(64 + z) & TZ & "?"
s(n + 1) = Chr(64 + z) & TZ & "Bestand"
s(n + 2) = Chr(64 + z) & TZ & "Neubau"
s(n + 3) = Chr(64 + z) & TZ & "ETW - Selbstnutzung"
s(n + 4) = Chr(64 + z) & TZ & "Neubau - Kauf vom Bauträger"
Next n
If Not Application.Intersect(Target, Range("B1:K13")) Is Nothing Then
'Eingabe Wert A oder B in Zelle B1 und Auswahl in Zelle K13 entsprechend "?" oder " _
_
Bestand" oder..........
s(0) = Sheets("Passwort").Range("B1").Value & TZ & Range("K13").Value
For i = 1 To 50
If s(i) = s(0) Then ' Übereinstimmung gefunden
SetButton i
Exit Sub
End If
Next i
SetButton 0 ' Alle ausblenden wenn keine Übereinstimmung
End If
End Sub
'Einblenden der Button in Abhängigkeit der Auswahl
Private Sub SetButton(intParam%)
Call AlleVerbergen
Call Zeigen
Select Case intParam
'Bei Eingabe 0
Case 0, 1 'A = ?
Sheets("Passwort").CommandButton2.Visible = True
Case 2 'A = "Bestand"
Sheets("Passwort").CommandButton1.Visible = True
Sheets("Passwort").CommandButton2.Visible = True
Sheets("Passwort").CommandButton3.Visible = True
Sheets("Eingabe (Quick-Check)").CommandButton2.Visible = True
Case 3 'A = "Neubau"
Sheets("Passwort").CommandButton1.Visible = True
Sheets("Passwort").CommandButton2.Visible = True
Sheets("Passwort").CommandButton3.Visible = True
Sheets("Eingabe (Quick-Check)").CommandButton3.Visible = True
Case 4 'A = ETW - Selbstnutzung
Sheets("Passwort").CommandButton1.Visible = True
Sheets("Passwort").CommandButton2.Visible = True
Sheets("Passwort").CommandButton3.Visible = True
Sheets("Eingabe (Quick-Check)").CommandButton5.Visible = True
Case 5 'A = "Neubau - Kauf vom Bauträger"
Sheets("Passwort").CommandButton1.Visible = True
Sheets("Passwort").CommandButton2.Visible = True
Sheets("Passwort").CommandButton3.Visible = True
Sheets("Passwort").CommandButton7.Visible = True
Sheets("Eingabe (Quick-Check)").CommandButton2.Visible = True
Case 6 'B = ?
Sheets("Passwort").CommandButton1.Visible = True
Sheets("Passwort").CommandButton2.Visible = True
Sheets("Passwort").CommandButton3.Visible = True
Sheets("Passwort").CommandButton5.Visible = True
Sheets("Passwort").CommandButton7.Visible = True
Case 6 'B = Bestand
Sheets("Passwort").CommandButton1.Visible = True
Sheets("Passwort").CommandButton2.Visible = True
Sheets("Passwort").CommandButton3.Visible = True
Sheets("Passwort").CommandButton5.Visible = True
Sheets("Passwort").CommandButton7.Visible = True
Sheets("Eingabe (Quick-Check)").CommandButton2.Visible = True
Sheets("Eingabe (Finanzg.-Prüfung)").CommandButton2.Visible = True
Sheets("Grunddaten (Tilg.-Modelle)").CommandButton11.Visible = True
Sheets("Fin.-Anfrage").CommandButton12.Visible = True
Sheets("Fin.-Anfrage").CommandButton13.Visible = True
Case 6 'B = Neubau
Sheets("Passwort").CommandButton1.Visible = True
Sheets("Passwort").CommandButton2.Visible = True
Sheets("Passwort").CommandButton3.Visible = True
Sheets("Passwort").CommandButton5.Visible = True
Sheets("Passwort").CommandButton7.Visible = True
Sheets("Eingabe (Quick-Check)").CommandButton1.Visible = True
Sheets("Grunddaten (Tilg.-Modelle)").CommandButton10.Visible = True
Sheets("Grunddaten (Tilg.-Modelle)").CommandButton11.Visible = True
Sheets("Fin.-Anfrage").CommandButton12.Visible = True
Sheets("Fin.-Anfrage").CommandButton13.Visible = True
Case 6 'B = ETW - Selbnutzung
Sheets("Passwort").CommandButton1.Visible = True
Sheets("Passwort").CommandButton2.Visible = True
Sheets("Passwort").CommandButton3.Visible = True
Sheets("Passwort").CommandButton5.Visible = True
Sheets("Passwort").CommandButton7.Visible = True
Sheets("Eingabe (Quick-Check)").CommandButton1.Visible = True
Sheets("Grunddaten (Tilg.-Modelle)").CommandButton10.Visible = True
Sheets("Grunddaten (Tilg.-Modelle)").CommandButton11.Visible = True
Sheets("Fin.-Anfrage").CommandButton12.Visible = True
Sheets("Fin.-Anfrage").CommandButton13.Visible = True
Case 6 'B = Neubau - Kauf vom Bauträger
Sheets("Passwort").CommandButton1.Visible = True
Sheets("Passwort").CommandButton2.Visible = True
Sheets("Passwort").CommandButton3.Visible = True
Sheets("Passwort").CommandButton5.Visible = True
Sheets("Passwort").CommandButton7.Visible = True
Sheets("Eingabe (Quick-Check)").CommandButton5.Visible = True
Sheets("Eingabe (Finanzg.-Prüfung)").CommandButton5.Visible = True
Sheets("Grunddaten (Tilg.-Modelle)").CommandButton12.Visible = True
Sheets("Fin.-Anfrage").CommandButton12.Visible = True
Sheets("Fin.-Anfrage").CommandButton13.Visible = True
' Case 7....50
Case Else
End Select
End Sub
Sub AlleVerbergen()
'Dim Blattname As String, n As Integer, CB As Shape
Dim Blattname As Variant, n As Integer, CB As Shape
Blattname = Array("Tabelle2", _
"Passwort", _
"ETW - Angaben", _
"Eingabe (Quick-Check)", _
"Ergebnis (Quick-Check-Neubau)", _
"Ergebnis (Quick-Check-Bestand)", _
"Eingabe (Finanzg.-Prüfung)", _
"Ergebnis (Fin.-Prüfung-Neubau)", _
"Ergebnis (Fin.-Prüfung-Bestand)", _
"Fin.-Anfrage", _
"Ergebnis (Fin.-Plan-Neubau)", _
"Ergebnis (Fin.-Plan-Bestand)", _
"Grunddaten (Tilg.-Modelle)", _
"Annuitäten-Tilgung", _
"BSV 10 Jahre", _
"BSV 12 Jahre", _
"BSV 15 Jahre (35%)", _
"Daten data credit") 'Anpassen
For n = 0 To UBound(Blattname)
For Each CB In Worksheets(Blattname(n)).Shapes
If CB.Name Like "Command*" Then CB.Visible = False
Next CB
Next n
End Sub
Sub Zeigen()
'Hier alle Commandbuttons sichtbar machen die sichtbar sein sollen
' Sheets("Passwort").CommandButton1.Visible = True
' Sheets("Passwort").CommandButton2.Visible = True
' Sheets("Passwort").CommandButton3.Visible = True
' Sheets("Passwort").CommandButton5.Visible = True
' Sheets("Passwort").CommandButton6.Visible = True
' Sheets("Passwort").CommandButton8.Visible = True
End Sub
Vielen Dank.
Gr. T.