Leerzeichen als Tausendertrenner

Programmierung unter AOO/LO (StarBasic, Python, Java, ...)

Moderator: Moderatoren

erikafuchs
******
Beiträge: 690
Registriert: Di, 13.02.2007 17:38
Wohnort: Büttelborn

Leerzeichen als Tausendertrenner

Beitrag von erikafuchs »

Hallo ihr Lieben,

nachdem ich hier eine Funktion zum Runden gefunden habe an der ich lange gebastelt habe, habt ihr ja vielleich hier auch für ein neues Problem eine fertige Lösung:
Da die Trennung der Tausender mit Punkten nicht mehr erlaubt ist, brauche ich eine Funktion, die bis zu 13 Stellen lange Zahlen durch Leerzeichen an den Tausenderstellen unterteilt, also aus "123456789" "123 456 789" macht. Hat jemand sowas?

Grüße
Pit
turtle47
*******
Beiträge: 1849
Registriert: Mi, 04.01.2006 20:10
Wohnort: Rheinbach

Re: Leerzeichen als Tausendertrenner

Beitrag von turtle47 »

Hallo lieber Pit,

zufällig habe ich mich gestern Abend mit diesem Thema auseinandergesetzt und folgendes gefunden:

Code: Alles auswählen

Sub Number_Format
	Dim Cell As Object
	Dim NumberFormats As Object
	Dim NumberFormatString As String
	Dim NumberFormatId As Long
	Dim LocalSettings As New com.sun.star.lang.Locale
	Dim myDoc as object
	Dim mysheet as object
	mydoc = ThisComponent
	mysheet = mydoc.sheets(0)	
	numberformats = mydoc.numberformats
	numberformatstring = "### ### ### ### ### ### ##0,00 [$€-407];[ROT]-0,00 [$€-407]"  '€ 2 Kommastellen negative in rot
	numberformatid = numberformats.queryKey(numberformatstring, Localsettings, true)
	if numberformatId = -1 then
	numberformatId = numberformats.addNew(numberformatstring,LocalSettings)
	end if
	mysheet.getcellbyposition(1,0).numberformat = numberformatId 
End Sub
Bei mir hat es geholfen, bei Dir auch?

Jürgen
Software hat keinen Verstand - benutze deinen eigenen...!

Win 7 SP1/ LibreOffice 3.4.2 OOO340m1 (Build:203) / Firefox 15.0.1 / Notebook ASUS K70IO 64 Bit-Betriebssytem
erikafuchs
******
Beiträge: 690
Registriert: Di, 13.02.2007 17:38
Wohnort: Büttelborn

Re: Leerzeichen als Tausendertrenner

Beitrag von erikafuchs »

Lieber Jürgen,
vielen Dank, auch da muss man erst mal drauf kommen: format(zahl,"### ### ### #00") scheint zu funktionieren.
Grüße
Pit
Antworten