Seite 1 von 1

Sheet kopieren

Verfasst: So, 01.02.2009 18:34
von keksi1970
Hi, ich mal wieder.

ich weiß zwar, wie man sheets kopiert, allerdings würde ich gerne einzelne Blätter in eine neue Datei verschieben/kopieren
wenn ich nur den Bereich wähle :

Code: Alles auswählen

   oDocument = ThisComponent
   oSheet1 = oDocument.Sheets.getByIndex(0)
   oSheet2 = oDocument.Sheets.getByIndex(1)
' Quellbereich festlegen
   oQuelleRange=oSheet1.getCellRangeByPosition(0,0,3,4)
   oQuellRangeAddresse = oQuelleRange.getRangeAddress
   oZiel = oSheet2.getCellByPosition(2,5)
   oZielCellAdresse=oZiel.getCellAddress
   oSheet2.copyRange(oZielCellAdresse,oQuellRangeAddresse)
endet es mit der Bemerkung : Achtung! Dies geht nicht zwischen zwei Dokumenten! Also man kann also Quelle und Ziel nicht in zwei Dokumenten verwenden.

Falscher Ansatz ? hat einer ne Idee, wie man dabei vorgeht ?
Die Datei unteranderem Namen speichern , alle nicht benötigten sheets löschen und die Datei unter dem richtigen Namen wieder aufrufen halte ich nur für eine Notlösung.

lg
Andreas

Re: Sheet kopieren

Verfasst: So, 01.02.2009 19:27
von Hömmelmann
Hallo Andreas,

falls es beim der Übertragung der Daten nur um die Daten, nicht aber um die Formate geht, kannst du das mit der Kombination von getdataarray und setdataarray lösen.
Der Code sieht dann in etwa wie folgt aus:

Inhalt = ThisComponent.Sheets().getByName( "Tabelle2" ).getCellRangeByName( "A1:C4" ).getDataArray()

und dann

ThisComponent.Sheets().getByName( "Tabelle2" ).getCellRangeByName( "A1:C4" ).setDataArray() = Inhalt

Probier's mal.


CU

Friedhelm

Re: Sheet kopieren

Verfasst: Mo, 02.02.2009 09:17
von keksi1970
danke, kann ich bestimmt mal brauchen.
Aber ich habe eine gewisse Vorlage incl. Format und Makros, Button usw. die ich in das neue Dokument übertragen möchte.

lg
Andreas

Re: Sheet kopieren

Verfasst: Mo, 02.02.2009 09:38
von turtle47
Hi Andreas,

dann schau dir mal folgenden Code an. Dieser kopiert das gesammte Tabellenblatt, incl. aller Formeln, Formate, Objekte etc. in ein neues Dokument. Läuft auch unter 3.0.

Viel Erfolg.

Jürgen

Re: Sheet kopieren

Verfasst: Mo, 02.02.2009 16:24
von keksi1970
hi Jürgen,

ich würde das ganze zu gerne ohne Dispatcher machen :D

aber besser als meine Notlösung ist das allemal :D

lg

Andreas

Edit : ich benutz den Dispatcher eigentlich nur, um bsp einen Durckernamen eindeutig zu erkennen und dann in mein Makro zu schreiben ^^