Anfängerfrage

Antwort erstellen


BBCode ist eingeschaltet
[img] ist ausgeschaltet
[url] ist eingeschaltet
Smileys sind ausgeschaltet

Die letzten Beiträge des Themas
   

Ansicht erweitern Die letzten Beiträge des Themas: Anfängerfrage

von Toxitom » Sa, 21.02.2004 10:32

HAllo Klaus,

in Ergänzung zu den Tipps:

Der Fehler in deinem Code ist einfach die Reihenfolge.
Zitat:

Code: Alles auswählen

oNewSheet = Doc.createInstance("com.sun.star.sheet.Spreadsheet")
Doc = StarDesktop.CurrentComponent
Doc.Sheets.insertByName("New Sheet", oNewSheet) 
oNewSheet konnte nicht erstellt werden, solange Doc nicht initialisiert wurde. Also, einfach die beiden ersten Zeilen rumdrehen, dann sollte dieser kurze Codeabschnitt auch funktionieren.

Gruss
Thomas

von openmind » Do, 19.02.2004 21:12

Wenn 'option explicit' gesetzt ist brauchst du voran ein

Code: Alles auswählen

Dim oNewSheet as Object
Dim Doc as Object 
Eine weiter Fallgrube ist, dass du ThisComponent aufrufst, was völlig korrekt ist. Beim entwickeln musst du aber beim aufrufen daran denken, was den gerade ThisComponent ist. Um sicher zu sein, dass auch das Fenster mit dem Calc-Dokument momentan auch wirklich gerade ThisComponent ist, rufst du das Makro im Calc-Fenster über Extras - Macros... auf.


Unter der Adresse

http://www.bcwin.ch/ooo/basic/

findest du ein Dokument über Basic und Calc. Da ist eine Menge über Calc, wie ich hoffe verständlich und hinreichend, erklärt und mit Codebeispielen vordemonstriert.

Anfängerfrage

von klaus_harrer » Do, 19.02.2004 20:24

Hallo

Ich möchte ein Sheet erzeugen und die zuvor ausgelesen Daten in diesen Sheets eintragen. Es scheitert schon beim erzeugen eines Sheets.

oNewSheet = Doc.createInstance("com.sun.star.sheet.Spreadsheet")
Doc = StarDesktop.CurrentComponent
Doc.Sheets.insertByName("New Sheet", oNewSheet)

ist mein Code zum erzeugen eines neuen Sheets. Es kommt die Fehlermeldung das die Variable oNewSheet nicht belegt sei.

Ich hoffe mir kann da einer weiterhelfen.

MfG
Klaus

Nach oben