Select Case Problem!
21.03.2023 14:34:58
Hans
Hallo,
ich habe ein Problem mit meiner Select Case Anweisung und ich bin in VBA ein Leihe.
Mein Problem ist Das die Case-Anweisung Pf immer nur den ersten Fall Case Is = 0 prüft und nicht in den zweiten Fall Case Is =1 springt wenn Pf = 1
Ich verstehe meinen Fehler nicht warum das so ist. Kann mir bitte sagen was ich falsch mache, ich dachte ich hätte die Case-Anweisung verstanden.
Vielen Dank im Voraus
unten der Code:
Sub Passfeld()
ActiveSheet.Protect Password:="STH", Contents:=True, AllowFormattingCells:=True, AllowFormattingColumns:=True, AllowFiltering _
:=True, AllowUsingPivotTables:=True, userinterfaceonly:=True
Dim LichMaßIST As Range 'lichtes Maß IST Innenkante zu Innenkante Steg
Dim SoUnGeli As Range 'Sockel unten geliefert
Dim SoObGeli As Range 'Sockel oben geliefert
Dim SoUnAbr As Range 'Sockel unten Abruf
Dim SoObAbr As Range 'Sockel oben Abruf
Dim PfSoUnAbr As Range 'Passfeld Sockel unten Abruf
Dim PfSoObAbr As Range 'Passfeld Sockel oben Abruf
Dim DelLichMaßPfo As Range 'Delta lichtes Maß Pfosten
Dim Pf As Range 'Passfeld
Dim SoUnEin As Range 'Sockel unten eingebaut
Dim SoObEin As Range 'Sockel oben eingebaut
Dim SoProFel As Range 'Sockel pro Feld
Dim zeile As Integer
Dim SchleiStawrt As Integer
Dim SchleiEnwrt As Integer
Dim LetzteZeile As Integer
Dim i As Integer
zeile = 18
LetzteZeile = ActiveSheet.Cells(Rows.Count, 2).End(xlUp).Row
SchleiStawrt = (zeile * 0) + 18
SchleiEnwrt = LetzteZeile
For i = SchleiStawrt To SchleiEnwrt
Set LichMaßIST = Worksheets("LÜ").Cells(i, 32) 'Objetvariablenverweis lichtes Maß IST Innenkante zu Innenkante Steg
Set SoUnGeli = Worksheets("LÜ").Cells(i, 35) 'Objetvariablenverweis Sockel unten geliefert
Set SoObGeli = Worksheets("LÜ").Cells(i, 36) 'Objetvariablenverweis Sockel oben geliefert
Set SoUnAbr = Worksheets("LÜ").Cells(i, 33) 'Objetvariablenverweis Sockel unten Abruf
Set SoObAbr = Worksheets("LÜ").Cells(i, 34) 'Objetvariablenverweis Sockel oben Abruf
Set PfSoUnAbr = Worksheets("LÜ").Cells(i, 40) 'Objetvariablenverweis Passfeld Sockel unten Abruf
Set PfSoObAbr = Worksheets("LÜ").Cells(i, 41) 'Objetvariablenverweis Passfeld Sockel oben Abruf
Set DelLichMaßPfo = Worksheets("LÜ").Cells(i, 131) 'Objetvariablenverweis Delta lichtes Maß Pfosten
Set Pf = Worksheets("LÜ").Cells(i, 102) 'Objetvariablenverweis Passfeld
Set SoUnEin = Worksheets("LÜ").Cells(i, 42) 'Objetvariablenverweis Sockel unten eingebaut
Set SoObEin = Worksheets("LÜ").Cells(i, 43) 'Objetvariablenverweis Sockel oben eingebaut
Set SoProFel = Worksheets("LÜ").Cells(i, 94) 'Objetvariablenverweis Planungsangabe Sockel pro Feld
Select Case Pf
Case Is = 0 Erster Fall
Select Case SoProFel
Case ""
SoUnAbr.Locked = True
SoObAbr.Locked = True
PfSoUnAbr.Locked = True
PfSoObAbr.Locked = True
Case Is = 0
SoUnAbr.Locked = True
SoObAbr.Locked = True
PfSoUnAbr.Locked = True
PfSoObAbr.Locked = True
Case Is = 1
Select Case DelLichMaßPfo
Case ""
SoUnAbr.Locked = True
SoObAbr.Locked = True
PfSoUnAbr.Locked = True
PfSoObAbr.Locked = True
Case Is 0.019
SoUnAbr.Locked = False
SoObAbr.Locked = True
PfSoUnAbr.Locked = True
PfSoObAbr.Locked = True
Case Is > -0.041
SoUnAbr.Locked = False
SoObAbr.Locked = True
PfSoUnAbr.Locked = True
PfSoObAbr.Locked = True
Case Is > 0.019
SoUnAbr.Locked = True
SoObAbr.Locked = True
PfSoUnAbr.Locked = False
PfSoObAbr.Locked = True
Case Is -0.041
SoUnAbr.Locked = True
SoObAbr.Locked = True
PfSoUnAbr.Locked = False
PfSoObAbr.Locked = True
End Select
Case Is = 2
Select Case DelLichMaßPfo
Case ""
SoUnAbr.Locked = True
SoObAbr.Locked = True
PfSoUnAbr.Locked = True
PfSoObAbr.Locked = True
Case Is 0.019
SoUnAbr.Locked = False
SoObAbr.Locked = False
PfSoUnAbr.Locked = True
PfSoObAbr.Locked = True
Case Is > -0.041
SoUnAbr.Locked = False
SoObAbr.Locked = False
PfSoUnAbr.Locked = True
PfSoObAbr.Locked = True
Case Is > 0.019
SoUnAbr.Locked = True
SoObAbr.Locked = True
PfSoUnAbr.Locked = False
PfSoObAbr.Locked = False
Case Is -0.041
SoUnAbr.Locked = True
SoObAbr.Locked = True
PfSoUnAbr.Locked = False
PfSoObAbr.Locked = False
Case Is = 1 zweiter Fall
Select Case SoProFel
Case ""
SoUnAbr.Locked = True
SoObAbr.Locked = True
PfSoUnAbr.Locked = True
PfSoObAbr.Locked = True
Case Is = 0
SoUnAbr.Locked = True
SoObAbr.Locked = True
PfSoUnAbr.Locked = True
PfSoObAbr.Locked = True
Case Is = 1
Select Case DelLichMaßPfo
Case ""
SoUnAbr.Locked = True
SoObAbr.Locked = True
PfSoUnAbr.Locked = True
PfSoObAbr.Locked = True
Case Is > 0
SoUnAbr.Locked = True
SoObAbr.Locked = True
PfSoUnAbr.Locked = False
PfSoObAbr.Locked = True
End Select
Case Is = 2
Select Case DelLichMaßPfo
Case ""
SoUnAbr.Locked = True
SoObAbr.Locked = True
PfSoUnAbr.Locked = True
PfSoObAbr.Locked = True
Case Is > 0
SoUnAbr.Locked = True
SoObAbr.Locked = True
PfSoUnAbr.Locked = False
PfSoObAbr.Locked = False
End Select
End Select
End Select
End Select
End Select
Next
End Sub