von homerj » Mi, 16.09.2015 17:30
Hallo,
ich habe mich bislang noch nie mit Makro-Programierung beschäftigt. Ich möchte gern per Makro in Calc (ich nutze Version 4.0.1) Zahlen (bzw. Beträge) in Worte umwandeln. Hier
viewtopic.php?f=2&t=11520 habe ich im Prinzip das gefunden, was ich suche. Wenn ich allerdings z.B. diese Funktion von Karo...
Code: Alles auswählen
function SchreibZifferfolge(n)as string
dim schrZiffer
dim s as string
schrZiffer() = Array ("null","eins","zwei","drei","vier","fünf","sechs","sieben","acht","neun")
for i = 1 to len(n)
s = s & schrZiffer(mid(n,i,1)) & "-"
next
schreibzifferfolge = left(s,len(s)-1)
End function
.. über den Aufruf
aufrufe, erscheint im entsprechenden Feld lediglich...
Als Test habe ich einfach mal als Makro dieses gespeichert...
Code: Alles auswählen
REM ***** BASIC *****
Function test(ByVal n) As String
If (n = 5) Then
test = "fünf"
End If
If (n > 5) Then
test = "mehr als 5"
End If
If (n < 5) Then
test = "weniger als 5"
End If
End Function
... das funktioniert über den Aufruf
Hat jemand eine Idee, was ich falsch mache? Vielen Dank!!
Hallo,
ich habe mich bislang noch nie mit Makro-Programierung beschäftigt. Ich möchte gern per Makro in Calc (ich nutze Version 4.0.1) Zahlen (bzw. Beträge) in Worte umwandeln. Hier [url]http://de.openoffice.info/viewtopic.php?f=2&t=11520[/url] habe ich im Prinzip das gefunden, was ich suche. Wenn ich allerdings z.B. diese Funktion von Karo...
[code]function SchreibZifferfolge(n)as string
dim schrZiffer
dim s as string
schrZiffer() = Array ("null","eins","zwei","drei","vier","fünf","sechs","sieben","acht","neun")
for i = 1 to len(n)
s = s & schrZiffer(mid(n,i,1)) & "-"
next
schreibzifferfolge = left(s,len(s)-1)
End function[/code]
.. über den Aufruf [code]SCHREIBZIFFERFOLGE(A1)[/code]
aufrufe, erscheint im entsprechenden Feld lediglich... [code]#WERT![/code]
Als Test habe ich einfach mal als Makro dieses gespeichert...
[code]REM ***** BASIC *****
Function test(ByVal n) As String
If (n = 5) Then
test = "fünf"
End If
If (n > 5) Then
test = "mehr als 5"
End If
If (n < 5) Then
test = "weniger als 5"
End If
End Function[/code]
... das funktioniert über den Aufruf [code]=TEST(A1)[/code]
Hat jemand eine Idee, was ich falsch mache? Vielen Dank!!