Wenn Wert kleiner dann Zellen löschen
#1
Hallo an die Runde

Beim letzten mal bin ich ja dank Eurer weiter gekommen, darum versuche ich es jetzt mal wieder

ich habe folgende Situation


Sub nachberechnen()
Dim R As Long
Dim SumWoche
Dim SumMonat

    With ActiveSheet
   
    For R = 18 To 59
        Select Case .Cells(R, "C")
        Case "Mo", "Di", "Mi", "Do", "Fr", "Sa", "So"
            .Cells(R, "F") = .Cells(R, "E") - .Cells(R, "D") + IIf(.Cells(R, "E") < .Cells(R, "D"), 1, 0)
            SumWoche = SumWoche + .Cells(R, "F")
            SumMonat = SumMonat + .Cells(R, "F")
        Case Else
            .Cells(R, "F") = SumWoche
            SumWoche = 0
        End Select
    Next
    .Cells(60, "F") = SumMonat
    End With
End Sub


Das geht auch bestens

jetzt wollte ich noch einarbeiten, das wenn:

"E" kleiner "H" dann soll G=""; H=""; I=""

Ich habs nicht hinbekommen Dodgy 

könnt Ihr mir helfen Blush
Antworten Top
#2
Hallo

nicht über SelectCase auswerten sondern eine eigene Code Zeile mit If Then einfügen.  Damit sollte es klappen:

mfg  Gast 123

Code:
  For R = 18 To 59
        Select Case .Cells(R, "C")
        Case "Mo", "Di", "Mi", "Do", "Fr", "Sa", "So"
            .Cells(R, "F") = .Cells(R, "E") - .Cells(R, "D") + IIf(.Cells(R, "E") < .Cells(R, "D"), 1, 0)
            SumWoche = SumWoche + .Cells(R, "F")
            SumMonat = SumMonat + .Cells(R, "F")
        Case Else
            .Cells(R, "F") = SumWoche
            SumWoche = 0
        End Select
        'neu eingefügt:
        If .Cells(R, "E") < .Cells(R, "H") Then .Cells(R, "G").Resize(1, 3) = Empty
    Next
[-] Folgende(r) 1 Nutzer sagt Danke an Gast 123 für diesen Beitrag:
  • Hundefreund
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste