Hallo liebe OpenOffice.org Nutzergemeinde,
Kurzversion der Frage: Ist mit Problemen zu rechnen, wenn einzelnen
Zellen Bereichsnamen zugewiesen werden, die aber schon als
Variablennamen in Makros verwendet werden.
lange Version:
ich arbeite gerade an einer kleinen Konstruktionsübung mit OpenOffice
Calc. Für die benötigten Wasser-Dampftafel-Werte verwende ich das Makro
von xsteam:
http://xsteam.sourceforge.net/
Das Makro ist im Dokument eingebettet. Die Berechnung wurde in das
folgende Dokument integriert:
http://www.x-eng.com/Download/Excel_Steam_Tables/XSteam_v2.5.ods
Zwecks einer einfacheren Kontrolle meiner Formeln weise ich einzelnen
Zellen Bereichsnamen [1] zu.
Ich habe bemerkt, dass einige meiner Bereichsnamen z.B. "tau" auch in
dem Makro als Variablen verwendet werden.
Im Anhang ist ein Stück Programmcode aus dem Makro, wo unter anderem die
Variable "tau" verwendet wird. Den Programmcode habe ich mir angesehen,
weil im Zuge einer Bereichsnamen Zuweisung sich der Basic-Editor mit dem
Makro geöffnet hat.
[1] mit Bereichsnamen bezeichne ich die Funktion die u.a. über
Einfügen-Namen-Festlegen erreicht wird. In der OpenOffice Hilfe wird der
entsprechende Eintrag mit dem folgenden Stichwort gefunden:
Namen;für Zellen definieren
Sollte ich sicherheitshalber alle meine Bereichsnamen auf ein Vorkommen
im Makro kontrollieren, oder sollten die Variablen im Makro nur lokal
definiert sein?
Herzlichen Dank für eure Hilfe.
Franz
Hier ein Ausschnitt aus dem Makro. Achtung ich habe Die Zahlen, zwecks
besserer Lesbarkeit veränder (in dem Array):
Im unteren Drittel ist das "tau"
Function h3_rhoT(ByVal rho As Double, ByVal T As Double) As Double
Dim i As Integer, Ji, Ii, ni As Variant, delta, tau, fidelta, fitau
As Double
Const R As Double = 0.461526, tc As Double = 647.096, pc As Double =
22.064, rhoc As Double = 322
Ii = Array(0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 3,
3, 3, 3, 3, 4, 4, 4, 4, 5, 5, 5, 6, 6, 6, 7, 8, 9, 9, 10, 10, 11)
Ji = Array(0, 0, 1, 2, 7, 10, 12, 23, 2, 6, 15, 17, 0, 2, 6, 7, 22,
26, 0, 2, 4, 16, 26, 0, 2, 4, 26, 1, 3, 26, 0, 2, 26, 2, 26, 2, 26, 0,
1, 26)
ni = Array(1.06, -15.73, 20.94, -7.68, 2.61, -2.80, 1.20, -8.45E-03,
-1.26, -1.15, 0.88, -0.64, 0.38, -0.85, 4.89, -3.05, 0.03, 0.12, -0.27,
1.38, -2.01, -8.21E-03, -0.47, 0.04, -0.44, 0.90, 0.70, 0.10, -0.32,
-0.50, -0.02, 0.09, 0.16, -0.01, -0.01, 5.79E-04, 3.23E-03, 8.09E-05,
-1.65E-04, -4.49E-05)
delta = rho / rhoc
tau = tc / T
fidelta = 0
fitau = 0
For i = 1 To 39
fidelta = fidelta + ni(i) * Ii(i) * delta ^ (Ii(i) - 1) * tau ^ Ji(i)
fitau = fitau + ni(i) * delta ^ Ii(i) * Ji(i) * tau ^ (Ji(i) - 1)
Next i
fidelta = fidelta + ni(0) / delta
h3_rhoT = R * T * (tau * fitau + delta * fidelta)
End Function
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscr...@de.openoffice.org
For additional commands, e-mail: users-h...@de.openoffice.org