Seite 1 von 1

[gelöst]Formatierte Währungsfelder umsetzen

Verfasst: Fr, 27.04.2018 15:13
von Postbyme
Hallo zusammen,
jeweils per Calc-Dateien gespeicherte Rechnungen möchte ich auswerten. Die Beträge sind darin im Format "Währung -1.234,00 €" dargestellt. Jetzt möchte ich diese Euro-Beträge per Makro in einer anderen Auswertungstabelle übertragen und zusammenfassen um mit diesen Beträgen einige Analysen und Kalkulationen durchzuführen. Wie sollte ich die Beträge programmtechnisch übertragen?
Danke

Re: Formatierte Währungsfelder umsetzen

Verfasst: Fr, 27.04.2018 16:11
von Postbyme
..was ich noch vergessen habe: Die Beträge sollen in der Tabelle so gespeichert sein, dass diese dann auch "CSV-exportfreundlich" sind.

Re: Formatierte Währungsfelder umsetzen

Verfasst: Sa, 28.04.2018 07:58
von Stephan
Wie sollte ich die Beträge programmtechnisch übertragen?
Ganz normal als Zahlenwert, also einzeln so:

Code: Alles auswählen

myDoc = thisComponent
mySheet = myDoc.sheets(0)
mySheet2 = myDoc.sheets(1)
mycell = mysheet.getCellByPosition(0,0)
mycell2 = mysheet2.getCellByPosition(0,0)
myvalue=mycell.value
mycell2.value = myvalue
mycell2.NumberFormat = mycell.NumberFormat
oder, mehrere als Zellbereich:

Code: Alles auswählen

myDoc = thisComponent
mySheet = myDoc.sheets(0)
mySheet2 = myDoc.sheets(1)
myrange = mysheet.getCellRangeByName("A1:A20")
myrange2 = mysheet2.getCellRangeByName("A1:A20")
myvalues=myrange.getDataArray()
myrange2.setDataArray(myvalues)
myrange2.NumberFormat = myrange.NumberFormat

Gruß
Stephan

Re: Formatierte Währungsfelder umsetzen

Verfasst: Sa, 28.04.2018 15:48
von Postbyme
Hallo Stephan,
vielen Dank. Da ich prinzipiell nicht mit variant arbeiten möchte würde mich noch interessieren mit welchem Format ich myvalue definieren müsste.
Danke

Re: Formatierte Währungsfelder umsetzen

Verfasst: So, 29.04.2018 11:04
von Stephan
Postbyme hat geschrieben: Sa, 28.04.2018 15:48 Hallo Stephan,
vielen Dank. Da ich prinzipiell nicht mit variant arbeiten möchte würde mich noch interessieren mit welchem Format ich myvalue definieren müsste.
Danke
Spontan hätte ich Long als Datentyp vorgeschlagen, aber das Internet verweist mich auf Currency, also nimm Currency :

Code: Alles auswählen

Dim myvalue As Currency
Gruß
Stephan

Re: Formatierte Währungsfelder umsetzen

Verfasst: So, 29.04.2018 12:30
von Postbyme
Danke, klappt jetzt alles!