DrPagel-FavIcon « »

Verfasst am 30.01.2008 16:40:28 Uhr
CurTiPot unter Staroffice, Teil 2: der pH-Kalkulator
Fortsetzung v.heute (Beitrag1)

Jetzt möchte ich mal wissen, wie ich diese Funktion zum Laufen bekomme.

Leser, die keine Zeit haben, sei angeraten, gleich zum Ende des Beitrages zu gehen, da dieser Text hier zum Test von Starofffice entartet ist, anstatt vom Test des CurTiPot-Programmes zu berichten.

Bei Staroffice erkennt man einen überlangen verdeckten Text durch ein kleines rotes Dreieck. Durch
  • einfaches Anklicken der Tabellenzelle, die diesen Text enthält, wird der vollständige Text unformatiert im Funktionsformularfeld der Rechenleiste angezeigt. Sollte diese nicht eingestellt sein, dann kann man das über das Staroffice-Menü "Ansicht / Symbolleisten / Rechenleiste" nachholen.
  • Doppelklick auf die texthaltige Tabellenzelle, wird dieser überlange Text vollständig angezeigt.
Z.B. durch Klick auf Feld B2 erfährt man, dass alle Zahlenwerte in dieser Tabelle in mol/liter angegeben sind.

Gut ist, dass die Tabelle mit Zahlwerten vorbelegt ist, die man durchaus verändern kann und soll, wenn man eigene Messungen berechnen will. Ausserdem muss man sich nicht an die vorgegebenen Titranden (Säuren und Basen) halten. Man kann sie auch durch andere Ersetzen. Ein Einfach-Klick auf das Feld G3, wo zur Zeit noch "Alanine" steht, lässt im Funktionsformularfeld der Rechenleiste die Staroffice-Adresse "=P3" erscheinen. Und siehe unter dem Feld P3, auch dort steht noch das Wort "Alanine". Doch darüber erkennt der Leser, dass man durch Klick auf Feld P2 einen anderen Titranden einstellen kann. Dieser andere Titrand kann dort aus einer umfangreichen Datensammlung (Listenfeld) ausgewählt werden. Zur Zeit enthält die Datensammlung (,falls ich mich nicht verzählt habe,) 242 Substanzen (es glaubt doch keiner, dass ich diese hier alle aufliste?) und als Hydroxidionen-Spender NaOH. Alle findet man bequem auf der letzten Seite mit Staroffice-Reiter "Database" (= "Datenbank" (dts.)) des Staroffice-Dokuments alphabetisch sortiert, jedoch mit ihren englischen Bezeichnungen aufgelistet. Man muss sie also nicht mühsam aus dem Funktionsformularfeld abtippen. Würde man dort deutsche Bezeichnungen der Chemikalien hineinschreiben, wären sie sofort in den Listenfeldern von K2 bis Q2 abrufbar. Immerhin befindet sich dort Ascorbinsäure (engl.: Ascorbic acid (C6H8O6)), Carbonsäure (engl.: Carbonic acid (H2CO3)), FlussSäure bzw. Hydrogenfluorid (engl.: Hydrogen fluoride (HF)), Schwefelsäure (engl.: Sulfuric acid (H2SO4)), meta-Kieselsäure (wfw: "m-Siliziumsäure" = (engl.:) m-Silicic acid (H2SiO3)), Salzsäure bzw. Hydrogenchlorid (engl.: Hydrogen chloride (HCl)), leider jedoch noch keine Salpetersäure (engl.: Nitric acid (HNO3)).

Doch woher kennt das Listenfeld diese Zuordnung? Hierzu kann man wieder das entsprechende Listenfeld, danach "Formularfunktionen anzeigen" bzw. den "Entwurfsmodus an/aus" anklicken, anschließend "Kontrollfeld / Daten / Quellzahlenbereich" auswählen und im so geöffneten Hilfsfenster "Listenfeld" sieht man z.B. die Titranden dem Bereich "Database.C22:C301" zugeordnet.

Nach der Auswahl stellt man fest, dass sich in der Tabelle "pKas of the acids and bases in the solution" nichts geändert hat und dies soll wohl auch richtig sein. Vermutlich dient diese als Mustertabelle. Dagegen haben sich einige Daten in der Tabelle "pKas loaded from the Database" durch einen anderen Titranden geändert.

Also die CurTiPot-Schaltfläche (Taste, Button) "Load pKas of these HiB" funktioniert ja auch. Da brauche ich noch etwas Geduld, bis die Taste "Calculate pH and related equilibrium data" an den voreingestellten Werten irgendetwas erkennbar ändert, so dass ich sagen kann: es funktioniert.

Immerhin, die "OK" Funktion in Zeile 17 funktioniert schon. Falls in den Tabellenfeldern staroffice-voreinstellungsgemäß nur die ersten beiden Nachkommaziffern angezeigt werden, kann es vorkommen, dass intern "0" =/= "0" ist und es erscheint die Warnung vor der Unausgeglichenheit von Ladungen. "Ich bin auch schon genz schön geladen und unausgeglichen! Mein Gott, dass dauert!" Um dieses Problem abzuschalten, muss man das Tabellenfeld oder die Tabellenfelder markieren und in der Staroffice-Objektleiste (falls noch nicht eingestellt: "Ansicht / Symbolleisten / Objektleiste") auf den Button "Dezimalstelle hinzufügen" klicken und dann sieht man meistens die Bescherung.

Während ich mich wundere, dass so eine Schaltfläche "Calculate pH" den pH-Wert immer noch nicht neu berechnet, erfahre ich nun, wie man Texte auf diesen Schaltflächen ändern kann: hierzu benutzt man die Werkzeugleiste (alls noch nicht eingestellt: "Ansicht / Symbolleisten / Werkzeugleiste") und klickt dort auf den Button "Formularfunktionen anzeigen", dann rechte Maustaste "Kontrollfeld / Titel". Ebenso hätte man in der Staroffice-Objektleiste auf den Button "Entwurfsmodus an/aus", dann auf "Kontrollfeld-Eigenschaften" klicken können. Nach dem Schließen aller Hilfsfenster vergesse man nicht, durch nochmaligen Klick aus dem "Entwurfsmodus an/aus" wieder herauszugehen bzw. "Formularfunktionen anzeigen" zu beenden. Gut, das ist auch wichtig, aber Beschriftung ist Verpackung der Funktion. Bei mir funktioniert aber diese ph-Kalkulatorfunktion immer noch nicht. Das Lello-Buch beschreibt diesen Benutzungszustand mit dem umgangssprachlichen prt. Ausdruck "Merda".

Bescheiden ist auch, dass zur Zeit das Umbenennen diverser Formularfunktionszellen samt Eigenschaften ("Formularfunktionen anzeigen", danach mit der rechten Maustaste auf die ausgewählte Zelle und "Ersetzen durch") ebensowie das Verschieben und Kopieren keine Probleme bereitet, jedoch wie kann man das aller erste mal eine solche Formularfunktionszelle als
  • Beschriftungsfeld
  • Dateiauswahl
  • Datumsfeld
  • Formatiertes Feld
  • Grafische Schaltfläche
  • Grafisches Kontrollfeld
  • Gruppierungsrahmen
  • Kombinationsfeld
  • Listenfeld
  • Markierfeld
  • Maskiertes Feld
  • Numerisches Feld
  • Optionsfeld
  • Schaltfläche
  • Textfeld
  • Währungsfeld
  • Zeitfeld.
erzeugen?

Nach der Staroffice-Hilfe erfährt man:
  • Formularentwurf:
    Öffnet das Formular im Entwurfsmodus. Dieser Befehl ist in schreibgeschützten Datenbanken nicht verfügbar
Aha! Tatsächlich öffnet man bei einer neuangelegten Staroffice-Entwurfsseite mit dem Werkzeugleisten-Button "Formularfunktionen anzeigen" eine große Auswahlleiste mit diversen Buttons, die auf die soeben gelisteten Funktionszellen (z.B. Schaltfläche, Listenfeld, usw.) verweisen bzw. diese initiieren. Bei der CurTiPot-Vorlage kann so ein Auswahlfeld nicht geöffnet werden.

Ob es daran liegt, dass ich kein SQL auf meinem PC zu haben glaube, weswegen die "Calculate pH"-Funktion nicht funktioniert? Unter "Formularfunktionen anzeigen / Entwurfsmodus an/aus / Formular-Eigenschaften / Daten / Art des Inhaltes" kann man deutlich die Worte "SQL-Befehl" lesen.

Noch etwas nachdenklicher werde ich, als ich diese Sätze auf der Download-Seite unter der Überschrift "Installation and Use" lese:
If no action occurs when clicking on CurTiPot's buttons, habilitate macros in Excel 2007 or adjust Excel 97-2003 to medium security (Tools / Options / Security / Macro security / Security Level / Medium) and reload CurTiPot, allowing the activation of macros (required for iterative computing of pH, distribution curves generation, smoothing, etc.).

Danach werde ich in der Staroffice-Hilfe fündig:
Basic Makros in MS Office Dokumenten

Unter Extras - Optionen - Laden/Speichern - VBA-Eigenschaften haben Sie die Möglichkeit, Einstellungen für den Umgang mit VBA-Makrocode in Microsoft Office-Dokumenten festzulegen. VBA-Makros können in StarOffice nicht ausgeführt werden, wenn Sie nicht zuvor konvertiert und angepasst wurden.
Und weiter heisst es etwas beschwichtigend:
Häufig soll in StarOffice nur der sichtbare Inhalt einer Word-, Excel- oder PowerPoint-Datei geändert und die Datei dann wieder im Microsoft Office-Format gespeichert werden, ohne dass irgendwelche Änderungen an den darin enthaltenen Makros vorgenommen wurden. Sie können das Verhalten von StarOffice diesbezüglich nach Belieben einstellen:
  • Entweder werden die VBA-Makros in einer kommentierten Form als Subroutine von StarOffice gespeichert und beim Speichern des Dokuments in einem Microsoft Office-Format wieder in die ursprüngliche Form gebracht,
  • oder die Microsoft Office-Makros werden beim Laden des Dokuments gelöscht. Letzteres bietet einen wirkungsvollen Schutz gegen Viren in Microsoft Office-Dokumenten.
Alle Klarheiten beseitigt!? Ist dieses Versteckspiel evtl. auch ein Grund dafür, dass der SUN-Konzern als Hersteller für Staroffice im letzten Jahr starke Umsatzverluste hinnehmen musste? Welch ein USER probiert denn gerne tagelang Funktionen aus um dann festzustellen, dass diese nicht unterstützt werden? Das macht König Kunde nur einmal! Diese Sicherheitseinstellung finde ich im Gegensatz zu den mysteriösen Einstellungen "hoch, mittel, gering" bei Konkurrenz-Produkten lobenswert, nur sie sollte auch als solche verkauft werden.

Häufig hat niemand auf der Welt wirklich Interesse am Fortschritt, weswegen der Fortschritt von alleine weiter fortschreitet, ohne sich um niemand zu kümmern. (dp) (7,5h)
archiviert (tbid1931.366): (dp) 25.01.2009 (+0,2h (+flagcounter +home.icon +w3c_LiCh))
Haftungsausschluss
free counters
© drpagel.de Alle Rechte vorbehalten.