Hallo Dieter, >Welche Funktion hat "Nr" in der Zeile args3(0).Name = "Nr", >Der Wert 2 in der Zeile args3(0).Value = 2, ist das das Ziel, in das die in >args 1 eingegebenen Zellen kopiert werden? Das nehme ich mal an.
Ich kenne mich da aber leider auch nicht aus und die Dokumentation zu den aufgezeichneten Makros finde ich - vorsichtig ausgedrückt - katastrophal! Ich habe trotz intensiver Suche zu diesen uno:Geschichten nichts halbwegs vernünftiges gefunden. Deshalb habe ich mich in das "StarOffice 8 Programmierhandbuch für BASIC" eingelesen, das findest Du komplett zum Download. Und nun sende ich Dir ein neues Makro auf dieser Basis, bei dem ich wenigstens einigermaßen verstehe, was passiert. Wichtig für Dich: Die Zählung von Tabellenblättern, Zeilen und Spalten beginnt immer mit 0 !!!! Also ist unten gewählter Quellbereich A15:F15 !!! Den Namen Deiner Zieltabelle (in gleicher Arbeitsmappe!) mußt Du noch anpassen, siehe rem- Kommentar. Von Deiner Aufgabenstellung ausgehend habe ich jetzt mal angenommen, die erste Zeile in "Tabelle 2" enthält Überschriften. Das Makro verschiebt nun die darunter befindlichen Daten um eine Zeile nach unten und schreibt dann die kopierten Daten rein, so daß Du immer die letzten Daten als oberste Zeile gleich unter den Überschriften siehst und nicht runter scrollen brauchst! So, nun viel Spaß damit. Über eine kurze Rückmeldung würde ich mich freuen. Gruß Udo Und hier der Code: _______________________________________________________________________ sub Zellen_kopieren Dim Doc As Object Dim Sheet As Object Dim QuellBereichAddresse As New com.sun.star.table.CellRangeAddress Dim ZielBereichAddresse As New com.sun.star.table.CellRangeAddress Dim ZielAdresse As New com.sun.star.table.CellAddress Doc = StarDesktop.CurrentComponent Sheet = Doc.Sheets(0) rem Hier mußt Du den Namen Deiner gewünschten Zieltabelle eingeben: Name_Zieltabelle = "Tabelle 2" rem Ermitteln des Tabellenindex Deiner Zieltabelle Anzahl = Doc.Sheets.count For i=0 to Anzahl-1 mySheet = Doc.Sheets(i) If mysheet.name = Name_Zieltabelle then GoTo Raus_aus_Schleife End Ef Next i Raus_aus_Schleife: QuellBereichAddresse.Sheet = 0 QuellBereichAddresse.StartColumn = 0 QuellBereichAddresse.StartRow = 14 QuellBereichAddresse.EndColumn = 5 QuellBereichAddresse.EndRow = 14 ZielBereichAddresse.Sheet = i ZielBereichAddresse.StartColumn = 0 ZielBereichAddresse.StartRow = 1 ZielBereichAddresse.EndColumn = 5 ZielBereichAddresse.EndRow = 1 ZielAdresse.Sheet = i ZielAdresse.Column = 0 ZielAdresse.Row = 1 rem Einfügen eines leeren Bereichs in Zeile 2 der Zieltabelle, rem Verschieben der existierenden Daten nach unten Sheet.insertCells(ZielBereichAddresse, com.sun.star.sheet.CellInsertMode.DOWN) rem Kopieren des Quellbereichs und Einfügen in die Zieltabelle Sheet.copyRange(ZielAdresse, QuellBereichAddresse) end sub --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]