Sheet kopieren

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: Sheet kopieren

Re: Sheet kopieren

von keksi1970 » Mo, 02.02.2009 16:24

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 ^^

Re: Sheet kopieren

von turtle47 » Mo, 02.02.2009 09:38

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

von keksi1970 » Mo, 02.02.2009 09:17

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

von Hömmelmann » So, 01.02.2009 19:27

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

Sheet kopieren

von keksi1970 » So, 01.02.2009 18:34

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

Nach oben