AW: Zellsteuerung
20.12.2005 16:49:10
Jessi
Hallo
hab schon mal was von der Methode was gehört kann aber nicht wirklich was damit anfangen.
Könntest du es mir für eine Zelle zeigen. Ich lade mal den Code hoch.
Die Bedingung und Anweisung für ElseIf hab ich fertig nur der übersichtlichkeit nicht mit hochgeladen (ähnlich der vorhandenen nur mit anderen Werten und anderen Zeilen, die eingeblendet werden). Funktioniert auch, nur die Zellsteurung eben nicht.
Sub prozKorrekturfaktor()
' Bildschirmaktualisierung ausschalten
Application.ScreenUpdating = False
Rows("29:30").EntireRow.Hidden = False
Rows("31:35").EntireRow.Hidden = True
Range("C29:C30") = "x,xx"
Range("C31:C35") = "1"
Range("A26") = "Herstellungswert (NHK 2000) in /m²:"
Range("A36") = "BGF in m²:"
Rows("53:54").EntireRow.Hidden = False
Rows("55:59").EntireRow.Hidden = True
' m² oder m³
If Range("B20") = "30.1" Or Range("B20") = "30.2" Or _
Range("B20") = "31.1" Or Range("B20") = "31.2" Or _
Range("B20") = "31.3" Then
Range("A26") = "Herstellungswert (NHK 2000) in /m³:"
Range("A36") = "BRF in m³:"
' mit Korrekturfaktor Grundrissart und durchschnittliche Wohnungsgröße
' Mehrfamilien-Wohnhaus
ElseIf Range("B20") = "3.11" Or Range("B20") = "3.12" Or _
Range("B20") = "3.13" Or Range("B20") = "3.21" Or _
Range("B20") = "3.22" Or Range("B20") = "3.23" Or _
Range("B20") = "3.32" Or Range("B20") = "3.33" Or _
Range("B20") = "3.42" Or Range("B20") = "3.53" Or _
Range("B20") = "3.73" Then
Range("C31,C32") = "x,xx"
Rows("31:32").EntireRow.Hidden = False
Rows("55:56").EntireRow.Hidden = False
' ohne Korrekturfaktor regionale Anpassung, Ortsgröße
' mit Korrekturfaktor Gebäudegröße und Unterbau
ElseIf ...
' ohne Korrketurfaktor regionale Anpassung und Ortsgröße
' mit Korrekturfaktor Gebäudegröße und Kotgrube
ElseIf ...
' ohne Korrekturfaktor regionale Anpassung und Ortsgröße
' mit Korrekturfaktor Gebäudegröße
ElseIf ...
' mit Korrketurfaktor Gebäudegröße
ElseIf ...
End If
' Bildschirmaktualisierung wieder einschalten
Application.ScreenUpdating = True
End Sub
Sub Zellensteuerung_SWV()
If ActiveCell <> Range("C43") Then
enter = 0
End If
Select Case ActiveCell.Address
Case "$B$5"
Range("$B$6").Select
... 'Weite Zellen die mit Enter angesteuert werden
' Wert in dieser Zelle entscheidet welche Zeilen eingeblendet werden
Case "$B$20"
prozKorrekturfaktor
Range("$B$21").Select
Case "$B$21"
Range("$C$26").Select
Case "$C$26"
Range("$C$27").Select
Case "$C$27"
Range("$C$28").Select
Case "$C$28"
Range("$C$29").Select
Case "$C$29"
Range("$C$30").Select
Case "$C$30"
Range("$C$31").Select
' Zelle die standardmäßig ausgeblendet ist
' wird durch die ElseIf anweisung von oben eingeblendet
Case "$C$31"
Range("$C$32").Select
... ' weitere Zellen die mit Enter angesteuert werden
Case "$C$43"
If enter = 1 Then
Range("$B$5").Select
enter = 0
Else
enter = enter + 1
End If
Case Else
Range("$B$5").Select
End Select
End Sub
Danke für deine hilfe
Jessi