DrPagel-Biografie...
.... schreibe ich, wenn ich älter bin.
Wem das zu lange dauert, kann sich inzwischen schon die Zeit mit dem Besuch meiner anderen Homepageseiten vertreiben:- Solange (seit 18.Oktober 2010) wegen des fehlenden alt-Atribut im img-Element des "speichern"-Buttons unter dem Browser Firefox für drpagel.log.ag keine
Beiträge publiziert werden können, können meine Beiträge ab dem 18.Oktober 2010 in meinem Tagebucharchiv durch Klick auf diesen Link weiterverfolgt werden. Die Abstrakts der Beiträge werden gegebenenfalls später hier nachgetragen.
- Dr.Pagel-WebseitenZentrale www.drpagel.de mit automat. Weiterleitung auf meine auch separat aufrufbare (schon etwas verstaubte) Seite:
- Dr.Pagel Webcam, Wetter und Wissen. Dort befindet sich auch das Impressum, die Kontaktadresse und ein Link zu meinem
- Foto. Weitere angefangene Projekte sind meine
-
Umweltseite mit meinem schönen Urlaubsfoto vom Oktober 2004 aus der versmogten lettischen Hauptstadt Riga an der Daugava, die ich bereits am 23.1.2005 bei Suchnase.de angemeldet hatte und der Domain-Inhaber, ohne mich zu informieren mit neuem Inhalt bespielt hat, dann meine - Seiten zum Thema Bildung, Gesundheit, Urlaub, Wellness (begonnen seit dem 10.9.2004, geplant seit Pfingsten 2004; freenet stellt diese gratis-Webseiten zum 31.3.2010 ein).
- Weblog-Archivseiten tb-archiv.drpagel.de
- meine
Vitamin-C-Forschungsseite mit der Option zum Kennenlernen von PHP (noch nicht getestet!; seit Dezember 2005) bei Lycos.de unwiderbringlich gelöscht! und ich habe jetzt weder Zeit noch Lust, diesen Datenverlust zu beheben! (Gewinn-Warnung: das wird wohl vor Winter 2011/2012 nichts mehr!) - meine Planung zur HP bei Lycos.fr (seit Dezember 2005)
- mein Multilingual-Projekt: Text in 31 Sprachen (languages)
- meine Ausspracheübung (z.Zt. in 24 Sprachen)
Jedoch hat mich der Datencrash im Juli 2005 soweit zurückgeworfen, dass ich danach keine meiner Webseiten mehr mit NOF aktualisiert und immer noch nicht alle defekten Dateien auf Wiederherstellung geprüft habe. Bei der Festplattenanalyse bei Vobis wurde in 2005 kein Virus gefunden, jedoch ein Jahr später hat mir die aktualisierte Antiviren-Software gezeigt, dass auch auf gewerbliche Virenscans leider kein Verlass ist.
Hier meine unvollständige Lieblings-Webseiten-Liste (z.B.: backlinks für PageRank):Ehemalige Weblogs sind in meiner Gesamtliste aufgeführt. Zur Kenntnisnahme: Alle mit (dp) gekennzeichneten lyrischen Ergüsse sind durch Copyright © by Dr.Detlef Pagel urheberrechtlich geschützt. Bis auf Widerruf ist die auszugsweise Wiedergabe mit Quellenangabe nur zum privaten nichtkommerziellen Gebrauch gestattet.
Hinweise zu Weblog-Code-Fehlern>>Forum zu Weblog (siehe auch rechte Leiste); Homepage(freenet-Administrator)NOTFALL-HINWEISE (siehe auch mein Eintrag vom 9.6.2005)Hinweise zu Internet-Störungen allgemein >>
Gebrauchsanleitung: es wird (zur Zeit) auf dieser Site immer nur der Weblog-Inhalt der letzten 5 Beiträge angezeigt. Zum Suchen anderer Einträge können die Inhaltsverzeichnisse (webtropia-Weiterleitung zum Loomes-Server, Loomes-Server) oder alternativ zum Freenet-Kalendariums am rechten Rand dieser Site ein eigener Kalender 2004, 2005 durch Anklicken der Wunschtage oder ein internes Suche-Formular: oder die Index-Seite für mein Tagebuch-ZentralArchiv For translation of my websites click here please (zhōng=#20013)Wetter in Wetzlar benutzt werden.
Der erste Tagebucheintrag fand am 16.Mai 2004 statt, also vor gut vier Jahren. Seitdem wurden zu verschiedenen Themen verfasst. Als kleines Dankeschön für das zunehmende Leserinteresse hier seit Mai2005 meine Bilder des Monats:
System&Browser&JavaScript-Abfrage, Browser&Player-Abfrage
Seit Mo., den 04.08.2008, 01 Uhr(MESZ; a.m.) (hierzu Statistik):
mehr...
Vorübergehend mussten zu Testzwecken fast alle Scripte im Tagebuch-Vorspann entfernt werden! Die meisten Skripte sind noch nicht reinstalliert worden. Daher dürfte jetzt fast keine eigene Javascript-Anwendung funktionieren.
Es ist noch viel zu testen. Daher werden voraussichtlich vor heute abend (16.6.2008) keine weiteren Skripte hier in den Weblog-Vorspann zurückinstalliert werden können. Ich bitte um Verständnis.
 |
 |
Verfasst am 01.03.2008 01:07:36 Uhr Beispiel einer Übertragung eines Excel/VBA-Codes nach Staroffice/StarBasic Teil2 Fortsetzung zum 29.2.2008
Ich bin längst noch nicht fertig. Zunächst konnten die VBA-Tabellenzell-"Eigenschaften" zum Paste-Vorgang geklärt werden.
| VBA | bedeuted
| | Paste:=xlPasteValues | nur die nackten Zahlen oder Strings werden übernommen, die Formateigenschaften (wie Hintergrundfarbe, Schriftfont, Rahmen, usw.) dagegen nicht (Lit.1)
| | Paste:=xlPasteFormats | nur die Formateigenschaften zu den Zellinhalten werden übernommen (Lit.1)
| | Operation:=xlNone | es wird keine (Rechen-)Operation durchgeführt
| | Operation:=xlAdd | es wird eine Additionsoperation durchgeführt (Lit.2)
| | Operation:=xlSubtract | es wird eine Subtraktionsoperation durchgeführt (Lit.3)
| | Operation:=xlMultiply | es wird eine Multiplikationsoperation durchgeführt (Lit.4)
| | Operation:=xlDivide | es wird eine Divisionsoperation durchgeführt (Lit.5)
| | SkipBlanks:=False | schreibt die Zellinhalte (z.B.: Funktionen, Zahlen oder Strings) linksbündig, füllt sie nicht mit Blanks (Leerstellen) auf
| | SkipBlanks:=True | schreibt die Zellinhalte (z.B.: Bilder, Funktionen, Zahlen oder Strings) rechtsbündig, füllt sie also mit Blanks (Leerstellen) auf (Lit.4)
| | Transpose:=False | fügt die Zellinhalte (z.B. Daten) senkrecht ein (Lit.6)
| | Transpose:=True | fügt die Zellinhalte (z.B. Daten) waagrecht ein (Lit.6)
| Die Literaturangaben sind nur exemplarisch und noch nicht verlinkt:
Lit.1: http://www.herber.de/forum/archiv/212to216/t214019.htm
Lit.2: http://www.herber.de/forum/messages/698374.html
Lit.3: http://www.vbaexpress.com/kb/getarticle.php?kb_id=50
Lit.4: http://www.vba-beispiele.de/office.php?was=1307
Lit.5: http://www.herber.de/forum/archiv/664to668/t667676.htm
Lit.6: http://www.office-loesung.de/ftopic119243_0_0_asc.php
Nun steht wieder die sogenannte "Roadmap" für eine den VBA-Eigenschaften anzupassende Zellkonfiguration in StarBasic fest.
Die komplette Zelle "mit Kind und Kegel" samt Eigenschaften und Methoden wurde im Teil1 kopiert. Nun möchte man nur die Funktionen ohne die Zellformatierung kopieren. Genug Platz auf dem CurTiPot-Datenblatt "pH_calc" findet man z.B. ab der Tabellenzelle AA23 bis AG30 :
Sub CopyAll2Formel
Dim oSheet as Object, oCell as Object
Dim oRangeOrg as Object, oRangeCopy as Object
rem
oSheet = ThisComponent.CurrentController.ActiveSheet
rem
oSheet1 = oSheet
oSheet2 = oSheet
rem
oRangeOrg = oSheet1.getCellRangeByName("AA3:AG10")
oRangeCopy= oSheet2.getCellRangeByName("AA23:AG30")
oRangeCopy.setFormulaArray(oRangeOrg.getFormulaArray)
End Sub
Bevor ich es vergesse, hier noch der Übertrag von den nackten Zahlen und Strings ohne ihre Funktionen und Zellformatierung. Genug Platz auf dem CurTiPot-Datenblatt "pH_calc" findet man z.B. ab der Tabellenzelle AA33 bis AG40 :
Sub CopyAll2Daten
Dim oSheet as Object, oCell as Object
Dim oRangeOrg as Object, oRangeCopy as Object
rem
oSheet = ThisComponent.CurrentController.ActiveSheet
rem
oSheet1 = oSheet
oSheet2 = oSheet
rem
oRangeOrg = oSheet1.getCellRangeByName("AA3:AG10")
oRangeCopy= oSheet2.getCellRangeByName("AA33:AG40")
oRangeCopy.setDataArray(oRangeOrg.getDataArray)
End Sub
Und falls bereits die reinen Formeln ohne die Formatierung in den Tabellenzellen (z.B. von AA23 bis AG30) angelegt sind, dann kann man daraus auch die Daten in einen freien Tabellenzellbereich von AA43 bis AG50 extrahieren:
Sub CopyFormel2Daten
Dim oSheet as Object, oCell as Object
Dim oRangeOrg as Object, oRangeCopy as Object
rem
oSheet = ThisComponent.CurrentController.ActiveSheet
rem
oSheet1 = oSheet
oSheet2 = oSheet
rem
oRangeOrg = oSheet1.getCellRangeByName("AA23:AG30")
oRangeCopy= oSheet2.getCellRangeByName("AA43:AG50")
oRangeCopy.setDataArray(oRangeOrg.getDataArray)
End Sub
Für die Extraktion von der Formatierung aus der "Vollständigen Zelle" fehlen mir noch die Ideen. Vielleicht muss man dazu erst die "Vollständige Zelle" duplizieren und sie dann von der Funktion befreien? (dp) (1,5h + 2h(04:45-06:45))
Nachtrag_1 am 5.3.2008 um 19.40Uhr: Soeben habe ich das pH_calc-Datenblatt vom CurTiPot-Programm (Visual Basic für Excel, Prof.Dr.Gutz, Sao Paulo) unter Staroffice zum Laufen gebracht. Das heisst aber noch nicht, dass es bei mir richtig rechnet.
Vorher waren noch einige StarBasic-Tricks anzuwenden: - Unter der Bezeichnung Output mag die Daten-Ausgabeprozedur unter Visual-Basic laufen; bei mir musste ich sie zu oOutput umbenennen, weil vermutlich Output bereits für andere mir unbekannte Staroffice-Zwecke reserviert ist.
- Ich weiß nicht, ob Visual-Basic so robust entworfen wurde, dass es die Rechenoperationen Division durch Null oder Logarithmus von Null einfach ignoriert und weitermacht, als wäre nichts passiert? Unter Staroffice musste ich diese Fälle mit einer zusätzlichen IF-Bedingung abfangen.
(dp) (0,75h)
Nachtrag_2 am 6.3.2008 um 16.40Uhr: Neue Unkenntnis habe ich bei mir aufgedeckt. Ob die entsprechenden Passagen in VBA richtig funktionieren, kann ich nicht beurteilen. Aber unter StarBasic geht es nicht, in einer IF-Bedingung zwei Bedingungen simultan mit AND verknüpft abzufragen, während bei der Überprüfung einer der Bedingungen auf ein verbotenes Datenfeld zugegriffen werden soll. Daher habe ich den Code von VBA
IF Bedingung1 AND Bedingung2 THEN ... so in einen sukzessiven Code für Starbasic entflochten: IF Bedingung1 THEN
IF Bedingung2 THEN ...
END IF
Vermutlich ist bei StarBasic der Begriff "line" bereits reserviert. Diesen konnte ich nicht einfach aus VBA übernehmen, sondern musste ihn zunächst mal zu "oline" umbenennen.
(dp) (0,25h)
Nachtrag_3 am 6.3.2008 um 22.10Uhr: Während in einer VBA-Vorlage kühn programiert wird: Range("A" & line + 41).Value =MyValue funktioniert diese Methode in StarBasic nur, falls man oSheet.getCellRangeByName( "A"&Cstr(oline+41) ).getCellByPosition( relativeZellspaltenPositon, relativeZellreihenPosition ).Value=MyValue umcodiert. Falls man in StarBasic die interne Methode str() anstelle von Cstr() benutzt, wird die Integerzahl 41 in den String " 41" mit einer führenden Leerstelle anstatt in "41" konvertiert. (dp) (0,25h)
Nachtrag_4 am 09.3.2008 um 01.10Uhr: Vermutlich habe ich wieder etwas durch "Learning by Doing" gelernt: offiziell heißt es, brauchen die Variablen nur irgendwo im Basic-Modul erklärt zu werden, damit sie im gesamten Modul bekannt seien. Damit bedeutet ein Modul unter Basic sinngemäß so etwas wie ein Hauptprogramm in einer anderen Software. Das Modul erkennt man (zumindest in Staroffice) daran, dass es mit "REM ***** BASIC *****" in der ersten Modulzeile eingeleitet wird. Wenn man vor der ersten Prozedur (bzw. Subroutine) "SUB ..." die Felder mit DIM MyArray(myArrayDimension) As Double, MySecondArray(mySecondArrayDimension) As Integer, ..." deklariert, wobei "myArrayDimension, mySecondArrayDimension" natürliche Zahlen sind, dann sollten diese Felder in allen Prozeduren bekannt sein. Es empfiehlt sich jedoch, diese Deklaration als Erinnerungsstütze mit der Anmerkung "Rem" in den entsprechend benötigten Prozeduren zu archivieren. Ebenso habe ich erfahren, dass es zwecks leichterer Überprüfung und Fehlersuche vorteilhaft ist, die Namen der Variablen in diesen Deklarationen oder in den Übergabelisten beim Aufruf der Prozeduren und Funktionen alphabetisch geordnet zu halten. (dp) (0,25h)
Adminbereich
| Diese Seite bookmarken
| Weitersagen |
|
 |
| < | April 2008 | > | | So | Mo | Di | Mi | Do | Fr | Sa |
|