Archiv des LibreOffice- und OpenOffice.org-Wiki

[ÜberSicht] [TitelIndex] [WortIndex] [SeiteFinden

1. Vereinfachung der Rechnungserstellung

Es sollen Rechnungen mittels eines TabellenDokuments erstellt werden. Dabei soll beim Abspeichern der Dateinamen aus dem Wert einer Zelle generiert werden (z.B. Rechnungsnummer und Kundenname).

<!> Denke daran, dass ein gleichnamiges Dokument ohne Warnung überschrieben wird!

sub save
  oDoc=thisComponent
  Sheet = oDoc.Sheets(0) '[erstes Arbeitsblatt]
  Cell = Sheet.getCellByPosition(0, 0)  '[Zelle A1]
  Filename = Cell.String
'  Path = "file:///data/kunden/rechnungen/" '[Pfad anpassen bei Linux]
'  Path = "file:///E:/daten/kunden/rechnungen/" '[Pfad anpassen bei Windows]
  dim args1(0) as new com.sun.star.beans.PropertyValue
  args1(0).Name = "FilterName"
  args1(0).Value = "StarOffice XML (Calc)"
  oDoc.storeasurl(Path &  Filename & ".sxc",args1())
end sub

Besondere Lizenzbedingungen für Programmcode

This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.

(!) Um den Dateinamen nicht aus dem Zellinhalt eines TabellenDokuments, sondern aus dem aktuellen Datum zu generieren, kann statt dessen das folgende Makro verwendet werden.

<!> Denke daran, dass ein gleichnamiges Dokument ohne Warnung überschrieben wird!

sub save
rem ----------------------------------------------------------------------
rem define variables
dim document   as object
dim dispatcher as object
rem ----------------------------------------------------------------------
rem get access to the document
document   = ThisComponent.CurrentController.Frame
dispatcher = createUnoService("com.sun.star.frame.DispatchHelper")
rem ----------------------------------------------------------------------
dim args1(2) as new com.sun.star.beans.PropertyValue
args1(0).Name = "URL"
pfad = "file:///C:/Dokumente%20und%20Einstellungen/..."
' Dieser Pfad muss angepasst bzw. ergänzt werden!
datum = date()
endung = ".ods"
args1(0).Value = pfad & datum & endung
args1(1).Name = Heute()
args1(1).Value = "calc8"
'args1(4).Name = "SelectionOnly"
'args1(4).Value = true
dispatcher.executeDispatch(document, ".uno:SaveAs", "", 0, args1())
end sub

Besondere Lizenzbedingungen für Programmcode

This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.


KategorieMakro KategorieCalc KategorieMakro


LizenzBedingungen | AnbieterKennzeichnung | DatenschutzErklärung | Stand: 2013-04-28