Hallo,

Rolf Schumann schrieb:
> rem ---------------------------------------------------------------------
> dispatcher.executeDispatch(document, ".uno:SetInputMode", "", 0, Array())
>
> rem ---------------------------------------------------------------------
> dim args2(0) as new com.sun.star.beans.PropertyValue
> args2(0).Name = "StringName"
> args2(0).Value = "NR"
>
> dispatcher.executeDispatch(document, ".uno:EnterString", "", 0, args2())
>   
An sich wird ja immer wieder dieser Block ausgeführt, nur mit einem
anderen String. Im Code steht nichts, dass sich der Cursor in eine
andere Zelle bewegen soll. Ich kann Dir nicht sagen, wie Du den
Makrorekorder dazu bekommst, es entsrechend aufzuzeichnen. Dieser Code
ändert auch nichts weiter außer einen festen String in die aktuelle
Zelle einzufügen. Sind das jedesmal die gleichen Werte, die Du in die
erste Zeile eintragen willst? Dann kannst Du selbst ein kleines Makro
schreiben:

Sub ErsteZeileErsetzten
  Dim oSheet as object
  oSheet = ThisComponent.Sheets(0)
  oSheet.getCellByPosition(0,0).String = "NR"
  oSheet.getCellByPosition(1,0).String = "TITEL"
  oSheet.getCellByPosition(2,0).String = "VN"
  'und immer so weiter ....
End Sub

Das an die Stelle kopieren, wo das alte Makro war und mit Extras > Makro
> ausführen das Makro ausführen. Du musst natürlich noch die weiteren
Spalten ergänzen. Dazu die Zeile oSheet.get... kopieren, die erste Zahl
in der Klammer (die Spalte) um eines erhöhen und den Text eingeben.

Allerdings bin ich mir nicht sicher, ob es das ist, was Du wirklich
haben willst, aber es kommt dem aufgezeichneten Makro am Nächsten.

Wenn es nicht auf das erste Tabellenblatt Deines Dokuments angewendet
werden soll, dann musst Du in der Zeile oSheet = ThisComponent.Sheets(0)
die 0 ersetzen durch die Position des Tabellenblatts (die Zählung
beginnt bei 0).

lg,
Verena

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Antwort per Email an