alttaki kodu dener misiniz?
Private Sub Worksheet_Change(ByVal Target As Range)
On Error Resume Next
If Not Intersect(Target, [C420]) Is Nothing Then
sat = Target.Row
Cells(sat, "E") = Day(Cells(sat, "D")) + 30 * Month(Cells(sat, "D")) + 360 * Year(Cells(sat, "D")) - (Day(Cells(sat, "C")) + 30 * Month(Cells(sat, "C")) + 360 * Year(Cells(sat, "C")))
Cells(sat, "F") = Int(Cells(sat, "E") / 360)
Cells(sat, "G") = Int((Cells(sat, "E") - Int(Cells(sat, "E") / 360) * 360) / 30)
Cells(sat, "H") = Cells(sat, "E") - Int(Cells(sat, "E") / 360) * 360 - Int((Cells(sat, "E") - Int(Cells(sat, "E") / 360) * 360) / 30) * 30
Select Case Range("E" & sat)
Case Is < 720
Range("i" & sat) = 720
Range("j" & sat) = Int(2 - Cells(sat, "E") / 360)
Range("k" & sat) = Int(12 - (Cells(sat, "E") - Int(Cells(sat, "E") / 360) * 360) / 30)
Range("L" & sat) = 30 - Cells(sat, "H")
Case Is >= 720
Range("i" & sat) = Int((Cells(sat, "E") - 720))
Range("j" & sat) = Int((Cells(sat, "E") - 720) / 360)
Range("k" & sat) = Int((Cells(sat, "E") - Int(Cells(sat, "E") / 360) * 360) / 30)
Range("L" & sat) = Cells(sat, "E") - Int(Cells(sat, "E") / 360) * 360 - Int((Cells(sat, "E") - Int(Cells(sat, "E") / 360) * 360) / 30) * 30
End Select
End If
End Sub