Bereich in and. Tabelle kopieren ohne diese aufzurufen

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: Bereich in and. Tabelle kopieren ohne diese aufzurufen

Re: Bereich in and. Tabelle kopieren ohne diese aufzurufen

von tunix_xl » Do, 12.03.2009 15:35

@achimgr

Ich weiß keinen Weg, wie sich das "Hinspringen" vermeiden ließe (uno:copy kopiert nur, was vorher selected ist)
zurückspringen geht mit (musst du an deine Gegebenheiten anpassen)

Code: Alles auswählen

Dim oSheet2 As Object
oSheet2 =  oDoc.getSheets().getByName("Tabelle2") 
oDoc.CurrentController.setActiveSheet(oSheet2)

Re: Bereich in and. Tabelle kopieren ohne diese aufzurufen

von achimgr » Mi, 11.03.2009 22:55

Hallo tunix,
habe erst jetzt wieder nachgeschaut.
Danke für den Code. Klappt zwar, aber eines passt noch nicht so: Ich bin in Tabelle1. Der Code soll einen Bereich in Tabelle2 kopieren, aber ohne "dahinzuspringen".
Ist das noch "einbaubar"?

Re: Bereich in and. Tabelle kopieren ohne diese aufzurufen

von tunix_xl » Mo, 09.03.2009 21:12

Hallo achimgr,
vlt. hilft dir dies:

Code: Alles auswählen

''----------------------------------------------------------------------------------
Sub BereichKopieren()    ''
''----------------------------------------------------------------------------------
Dim oDoc As Object
Dim oSheet As Object
Dim vonBereich As Object

oDoc  = ThisComponent
oSheet  =  oDoc.getSheets().getByName("DeineTabelle")   
vonBereich = oSheet.GetCellrangeByPosition(0,0,100,100) ''' zu kopierender Bereich

 dim oFrame As object
 dim oDisp As object
 oFrame = ThisComponent.CurrentController.Frame
 oDisp = createUnoService("com.sun.star.frame.DispatchHelper")
 odoc.currentcontroller.select(vonBereich)
 oDisp.executeDispatch(oFrame, ".uno:Copy", "", 0, Array())

End sub
Der kopierte Bereich sollte dann in der Zwischenablage stehen... habs aber nicht getestet.

Hats gehilft??

Gruß
t.

Re: Bereich in and. Tabelle kopieren ohne diese aufzurufen

von Karolus » Mo, 09.03.2009 07:10

Hallo
Die in diesem Makro benuzte Methode ist ausschliesslich zum kopieren/einfügen innerhalb eines Tabellendokuments geeignet.
Du möchtest jetzt aber in die Zwischenablage kopieren und im Email-programm einfügen. Über den Suchbegriff "Zwischenablage" hier im Unterforum bekommst du zum Thema eine ganze Reihe von Ergebnissen.

Ich hoffe aber das es für deine Aufgabenstellung eine Lösung via Serienbrief/-email gefunden werden kann?

Gruß Karo

Bereich in and. Tabelle kopieren ohne diese aufzurufen

von achimgr » So, 08.03.2009 22:41

Hallo,

ich habe folgendes Problem:
Karo gab mir mal diesen Code:
sub bereich_kopieren
oDocument = ThisComponent
oQuellblatt = oDocument.Sheets().getByName("Email-Formular")
oZielblatt = oDocument.Sheets().getByName("Email-Formular Anfrage")
' Quellbereich festlegen
oQuelleRange = oQuellblatt.getCellRangeByName("A1:J65")
oQuellRangeAddresse = oQuelleRange.getRangeAddress
oZiel = oZielblatt.getCellByPosition(26,1) 'einfügen ab A2
oZielCellAdresse=oZiel.getCellAddress
oZielblatt.copyRange(oZielCellAdresse,oQuellRangeAddresse)
end sub

Wunderbar, klappt. Jetzt aber folgendes: Ich möchte nun gerne NUR den Bereich kopieren -und nicht einfügen.
Das Einfügen mache ich dann direkt danach manuell in einer neuen Email mit Strg+V. Ich weiß, dass das wohl auch per Makro geht, aber das wird mir wohl noch zu kompliziert.
Ich wollte alle Zeilen mit "oZiel" rausnehmen und dachte nun habe ich nur kopiert - klappt aber nicht.
Mag mir jemand helfen?

Nach oben