Date: prev next · Thread: first prev next last
2012 Archives by date, by thread · List index


Hallo *,

ich habe jetzt Zeit gehabt, mir den Code selbst zusammen zu suchen bzw. zu erstellen. Dadurch wird der Absatz unter einer Tabelle entfernt. Diese benötige ich für meine spezielle Situation. Ich möchte aber ausdrücklich davor warnen, diesen Code unkritisch anzuwenden. Der Absatz unter einer Tabelle wird in LO unbedingt benötigt, um "normal" unterhalb einer Tabelle weiterarbeiten zu können.

Theoretisch ist es möglich, eine Abfrage einzubauen, ob der "DelToEndOfSentence"-Befehl wirklich ausgeführt werden soll.

Im Prinzip ist es wahrscheinlich auch möglich, per Makro den Absatz nachträglich wieder einfügen zu lassen, wenn man in der Tabelle steht. Aber dies benötige ich nicht, so dass ich keine Zeit "verschwenden" möchte, um den Code zu finden.

Gruß

Jochen

sub Probe1
  Dim oTable
  Dim oInsertPoint
  Dim oVCursor
  oTable = ThisComponent.createInstance("com.sun.star.text.TextTable")
  oTable.initialize(2, 3) 'Zwei Zeilen, drei Spalten.
  oInsertPoint = ThisComponent.Text.getEnd()
  oInsertPoint.getText().insertTextContent(oInsertPoint, oTable, False)
  oTable.setDataArray(Array(Array(0, "Eins", 2), Array(3, "Vier", 5)))
  oTable.getCellByName("C2").setString("adada")
  ThisComponent.CurrentController.select(oTable)
        oVCursor = ThisComponent.CurrentController.getViewCursor()
        oVCursor.gotoEnd(True)
        oVCursor.gotoEnd(True)
        ThisComponent.currentController.getViewCursor().goRight(1, Boolean)
        ThisComponent.currentController.getViewCursor().goLeft(1, Boolean)
        dim document   as object
        dim dispatcher as object
        document   = ThisComponent.CurrentController.Frame
        dispatcher = createUnoService("com.sun.star.frame.DispatchHelper")
dispatcher.executeDispatch(document, ".uno:DelToEndOfSentence", "", 0, Array())
end sub


Am 01.01.2012 10:39, schrieb Jochen:
Hallo *,

guten Morgen und ein gutes neues Jahr.

Ich habe eine Frage zur Makroprogrammierung. Das unten stehende Makro
fügt eine Tabelle am Ende des Dokumentes ein. Leider fügt LO unterhalb
der Tabelle immer ein "Absatzzeichen" ein. Darüber stolpern laufend
Personen, die damit zu tun haben. Es gibt einen Workaround, um dieses
"Absatzzeichen" zu entfernen: Anklicken der letzten Zelle in der Tabelle
und Drücken von Strg+Umschalt+Entf.

Ich möchte die Entfernung des "Absatzzeichens" per Makro realisieren.
Allerdings finde ich nicht den dazu gehörigen Makrobefehl.
Also es fehlt:
1) Springe zur letzten Zelle der Tabelle
2) Führe Strg+Umschalt+Entf aus

Kennt jemand die Lösung?

Sub Probe
Dim oTable
Dim oInsertPoint
oTable = ThisComponent.createInstance("com.sun.star.text.TextTable")
oTable.initialize(2, 3) 'Zwei Zeilen, drei Spalten.
oInsertPoint = ThisComponent.Text.getEnd()
oInsertPoint.getText().insertTextContent(oInsertPoint, oTable, False)
oTable.setDataArray(Array(Array(0, "Eins", 2), Array(3, "Vier", 5)))
End sub

Gruß

Jochen


--
Informationen zum Abmelden: E-Mail an users+help@de.libreoffice.org
Probleme? http://de.libreoffice.org/hilfe-kontakt/mailing-listen/abmeldung-liste/
Tipps zu Listenmails: http://wiki.documentfoundation.org/Netiquette/de
Listenarchiv: http://listarchives.libreoffice.org/de/users/
Alle E-Mails an diese Liste werden unlöschbar öffentlich archiviert

Context


Privacy Policy | Impressum (Legal Info) | Copyright information: Unless otherwise specified, all text and images on this website are licensed under the Creative Commons Attribution-Share Alike 3.0 License. This does not include the source code of LibreOffice, which is licensed under the Mozilla Public License (MPLv2). "LibreOffice" and "The Document Foundation" are registered trademarks of their corresponding registered owners or are in actual use as trademarks in one or more countries. Their respective logos and icons are also subject to international copyright laws. Use thereof is explained in our trademark policy.