von einem Arbeitsblatt benötige ich ein Duplikat mit identischen Formaten und Werten aber ohne Verknüpfungen und Funktionen.
Mit nachfolgendem Code kann ich im ersten Schritt das Arbeitsblatt duplizieren und im zweiten Schritt im Duplikat den gesamten genutzten Bereich kopieren und wieder an gleicher Stelle einfügen.
Code: Alles auswählen
sub kopieren_einfuegen
oDocument = ThisComponent
oDocument.Sheets.CopyByName("Tabelle1","Tabelle2",1) 'Tabelle1 duplizieren
'Inhalt der neuen Tabelle2 kopieren und nur deren Werte über die bestehenden Daten einfügen.
oSheet = thisComponent.sheets(1) '2.Blatt
ocursor = oSheet.createCursor()
ocursor.gotoStart()
ocursor.gotoEndofUsedArea(false) 'letzte Zelle des Bereiches
letzteSpalte = ocursor.getRangeAddress.endColumn 'index letzte Spalte des Bereichs
letzteZeile = ocursor.getRangeAddress.endRow 'index letzte Zeile des Bereichs
oQuelleRange=oSheet.getCellRangeByPosition(0,0,letzteSpalte,letzteZeile)
oQuellRangeAddresse = oQuelleRange.getRangeAddress
oZiel = oSheet.getCellByPosition(0,0)
oZielCellAdresse=oZiel.getCellAddress
oSheet.copyRange(oZielCellAdresse,oQuellRangeAddresse)
end sub
Bei Dannenhöfer konnte dazu nichts passendes finden.
Wie kann man nur die Werte der zuvor kopierten Daten einfügen, oder wie macht man es richtig mit viel weniger Code?
Viele Grüße
Ich Bins