Tabellenblatt kopieren, neuer Name aus Zelle

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: Tabellenblatt kopieren, neuer Name aus Zelle

Re: Tabellenblatt kopieren, neuer Name aus Zelle

von lieslweppen » Mi, 04.03.2020 08:02

Besten Dank! So funktioniert es.
Richtig, raten sollte man nie. Befinde mich im Lernprozess relativ am Anfang.
Gelobe Besserung, werde sicher trotzdem hin und wieder Fragen haben.

Re: Tabellenblatt kopieren, neuer Name aus Zelle

von Stephan » Di, 03.03.2020 16:44

oActiveSheet ist nicht definiert. So sollte es gehen:

Code: Alles auswählen

sub copy_sheet
oActiveSheet = ThisComponent.CurrentController.ActiveSheet
oSheets = ThisComponent.sheets
sNewSheetName=oActiveSheet.getCellRangeByName("E1").String
osheets.copyByName( oActiveSheet.Name, sNewSheetName, ocount )
end sub
Im Übrigen musst (und sollst) Du solche Dinge nicht raten, sondern die fehlerhafte Zeile ist markiert und Du hast die Fehlermeldung und musst also nur die betroffenen Objectvariablen prüfen.



Gruß
Stephan

Re: Tabellenblatt kopieren, neuer Name aus Zelle

von lieslweppen » Di, 03.03.2020 16:10

Hallo,

erstmal vielen Dank!
ich hab da noch irgendwo einen Fehler und find ihn nicht. Mit wird immer ein Laufzeitfehler mit "Objektvariable nicht belegt" angezeigt.
Darf ich noch um ein wenig Nachhilfe bitten? Vielen Dank.

Code: Alles auswählen

sub copy_sheet

oSheets = ThisComponent.sheets
sNewSheetName=oActiveSheet.getCellRangeByName("E1").String
osheets.copyByName( oActiveSheet.Name, sNewSheetName, ocount )

end sub

Re: Tabellenblatt kopieren, neuer Name aus Zelle

von mikeleb » Sa, 29.02.2020 10:50

Hallo,
.copyByName erwartet den neuen Namen als String.
Den erhältst du mit:

Code: Alles auswählen

 sNewSheetName=oActiveSheet.getCellRangeByName("E1").String
und dann eben

Code: Alles auswählen

osheets.copyByName( oActiveSheet.Name, sNewSheetName, ocount )

Tabellenblatt kopieren, neuer Name aus Zelle

von lieslweppen » Fr, 28.02.2020 22:55

Hallo,

ich versuche mit folgender Zeile ein Tabellenblatt zu kopieren.

osheets.copyByName( oActiveSheet.Name, oNewSheetName, ocount )

Dabei soll oNewSheetName den Text der in Zelle E1 steht zugewiesen bekommen.
Es existiert hier ein Beitrag wo dies mit einer Inputbox gelöst ist. Was mir leider nicht hilft.
E1 beinhaltet Text nach dem Muster "2020_KW1_Text" der über VERKETTEN aus mehreren anderen Zellen zusammengesetzt ist und soll dann jeweils beim kopieren dem kopierten Arbeitsblatt gegeben werden.

Wie muss ich das zuweisen? Geht dies überhaupt auf diesem Weg? Muss das NewSheetName als Object oder String behandelt werden?

Vielen Dank.

Nach oben