function - #Wert!
21.01.2020 09:51:57
Steffen
ich habe in einer Excel-Tabelle mittels VBA eine eigene "function" angelegt, die auch soweit funktioniert. Mit Hilfe eines weiteren Makros kann ich neue Tabellenblätter hinzufügen. Beim Hinzufügen eines neuen Tabellenblatts berechnet Excel im Hintergrund alle Zellen in der Excel-Datei neu. Das führt dazu, dass dann die "function" Rohrreibungszahl "#Wert!" in dem bestehenden Tabellenblatt zurückgibt. Problem ist wohl, dass die "function" auf Zellenwerte aus dem aktuellen Tabellenblatt mit "ActiveSheet" zurückgreift und das beim automatisierten Neuberechnen nicht aktiv ist. Kennt ihr Möglichkeiten, um das Problem zu beheben?
Varianten wie
Application.Calculation = xlCalculationManual
helfen leider nicht. Beim Zurücksetzen zum automatisierten Rechnen tritt dann der Fehler auf.
Function Rohrreibungszahl(y, Re, k) As Double
N = 11 + y
V = ActiveSheet.Cells(N, 4).Value
k = ActiveSheet.Cells(N, 31).Value / 1000
d = ActiveSheet.Cells(N, 28).Value / 100
Abschnitt der Berechnung - Endergebnis wird auf der Variablen "l" gespeichert!
Rohrreibungszahl = l
End Function
Liebe Grüße und vielen DankSteffen