Hallo,
ich habe mir 4 eigene Funktionen zur Berechnung in vba geschrieben und verwende sie in 2 Arbeitsblättern. Es funktioniert auch. Allerdings "hängen" sich die Funktionen anscheinend manchmal auf: Das zeigt sich dadurch, dass in den Zellen plötlich keine Ergebnisse mehr ausgegeben werden (oder nur vereinzelt) oder auch in manchen Zellen das Ergebnis aus einer der 3 anderen Funktionen steht. Wenn ich dann die Funktion in einem Feld neu berechne, aktualisieren sich auch alle anderen auf dem Arbeitsblatt. Dafür sind dann häufig die Ergebnisse der Funktionen auf dem anderen Arbeitsblatt weg.
Weiß jemand Rat?
Alle Funktionen sind in einem Modul. Hilfe wäre sehr willkommen. Besten Dank, Fritz.
Option Explicit
Function SUM_EG13Monatlich(Bereich As Range)
Dim i%, j%, Zelle As Range
For Each Zelle In Bereich
If Zelle.Value = 13 Then
i = Zelle.Row + 3
j = Zelle.Column
SUM_EG13Monatlich = SUM_EG13Monatlich + Cells(i, j).Value
End If
Next Zelle
End Function
Function SUM_EG11Monatlich(Bereich As Range)
Dim i%, j%, Zelle As Range
For Each Zelle In Bereich
If Zelle.Value = 11 Then
i = Zelle.Row + 3
j = Zelle.Column
SUM_EG11Monatlich = SUM_EG11Monatlich + Cells(i, j).Value
End If
Next Zelle
End Function
Function SUM_FreistellungMonatlich(Bereich As Range)
Dim i%, j%, Zelle As Range
For Each Zelle In Bereich
If Zelle.Value = "Freistellung" Then
i = Zelle.Row + 2
j = Zelle.Column
SUM_FreistellungMonatlich = SUM_FreistellungMonatlich + Cells(i, j).Value
End If
Next Zelle
End Function
Function SUM_HiwiMonatlich(Bereich As Range)
Dim i%, j%, Zelle As Range
For Each Zelle In Bereich
If Zelle.Value Like "*HK" Then
i = Zelle.Row + 2
j = Zelle.Column
SUM_HiwiMonatlich = SUM_HiwiMonatlich + Cells(i, j).Value
End If
Next Zelle
End Function
|