Seite 1 von 1

Open Office Calc und Englisch

Verfasst: Mi, 27.02.2008 09:14
von venom30
ch will eine tabelle erstellen wo eine reihe mit nummern 1-100. und dann wo in der nächste reihe in englisch (one bis onehundert) steht. aber kann es sein das open office calc kein englisch kann? also wenn ich die normalen zahlen ziehe nach unten, macht er ja selber weiter (markieren und dann einfach ziehen). wenn ich das selbe machen will mit one,two,three usw usw, kopiert er einfach one in die unterste spalte/zeile. das programm macht nicht weiter mit two,three,four usw usw.

wie kann ich das beheben? oder muß ich das mit der hand machen vielleicht?

thxs im voraus

Re: Open Office Calc und Englisch

Verfasst: Mi, 27.02.2008 09:30
von komma4
venom30 hat geschrieben:aber kann es sein das open office calc kein englisch kann?

Nein, Calc kann kein Englisch.
Calc kann dementsprechend aber auch kein Deutsch.

Du suchst eine Funktion "Zahl zu Wort", die nicht eingebaut ist.

Für die Ausgabe in Englisch brauchst Du eine benutzerdefinierte Funktion. Andrew hat in seinem Makrodokument eine Routine dafür (Code in die STANDARD-Bibliothek von "Meine Makros" einfügen).

Code: Alles auswählen

Function NumberToText(ByVal n) As String
  REM by Andrew D. Pitonyak
  Dim sBigWordsUSA()
  Dim sBigWordsUK()
  Dim sBigWordsDE()

  REM 10^100 is a googol (10 duotrigintillion)
  REM This goes to 10^303, how big do you really want me to go?
sBigWordsUSA = Array( "", _
     "thousand", "million", "billion", "trillion", "quadrillion", _
     "quintillion", "sexillion", "septillion", _
     "octillion", "nonillion", "decillion", "undecillion", "duodecillion", _
     "tredecillion","quattuordecillion", "quindecillion", "sexdecillion", _
     "septdecillion", "octodecillion", "novemdecillion", "vigintillion", _
     "unvigintillion", "duovigintillion", "trevigintillion", _
     "quattuorvigintillion", "quinvigintillion", "sexvigintillion", _
     "septvigintillion", "octovigintillion", "novemvigintillion", _
     "trigintillion", "untrigintillion", "duotrigintillion", _
     "tretrigintillion", "quattuortrigintillion", "quintrigintillion", _
     "sextrigintillion", "septtrigintillion", "octotrigintillion", _
     "novemtrigintillion", "quadragintillion", "unquadragintillion", _
     "duoquadragintillion", "trequadragintillion", _
     "quattuorquadragintillion", _
     "quinquadragintillion", "sexquadragintillion", "septquadragintillion", _
     "octoquadragintillion", "novemquadragintillion", "quinquagintillion", _
     "unquinquagintillion", "duoquinquagintillion", "trequinquagintillion", _
     "quattuorquinquagintillion", "quinquinquagintillion", _
     "sexquinquagintillion", "septquinquagintillion", _
     "octoquinquagintillion", _
     "novemquinquagintillion", "sexagintillion", "unsexagintillion", _
     "duosexagintillion", "tresexagintillion", "quattuorsexagintillion", _
     "quinsexagintillion", "sexsexagintillion", "septsexagintillion", _
     "octosexagintillion", "novemsexagintillion", "septuagintillion", _
     "unseptuagintillion", "duoseptuagintillion", "treseptuagintillion", _
     "quattuorseptuagintillion", "quinseptuagintillion", _
     "sexseptuagintillion", _
     "septseptuagintillion", "octoseptuagintillion", "novemseptuagintillion", _
     "octogintillion", "unoctogintillion", "duooctogintillion", _
     "treoctogintillion", "quattuoroctogintillion", "quinoctogintillion", _
     "sexoctogintillion", "septoctogintillion", "octooctogintillion", _
     "novemoctogintillion", "nonagintillion", "unnonagintillion", _
     "duononagintillion", "trenonagintillion", "quattuornonagintillion", _
     "quinnonagintillion", "sexnonagintillion", "septnonagintillion", _
     "octononagintillion", "novemnonagintillion", "centillion" _
  )
  
  sBigWordsUK() = Array( "", "thousand", _
     "milliard", "billion", "billiard", "trillion", "trilliard", _
     "quadrillion", "quadrilliard", "quintillion", "quintilliard", _
     "sextillion", "sextilliard", "septillion", "septilliard", _
     "octillion", "octilliard", "nonillion", "nonilliard", "decillion", _
     "decilliard", "undecillion", "undecilliard", "dodecillion", _
     "dodecilliard", "tredecillion", "tredecilliard", "quattuordecillion", _
     "quattuordecilliard", "quindecillion", "quindecilliard", "sexdecillion", _
     "sexdecilliard", "septendecillion", "septendecilliard", "octodecillion", _
     "octodecilliard", "novemdecillion", "novemdecilliard", "vigintillion", _
     "vigintilliard", "unvigintillion", "unvigintilliard", "duovigintillion", _
     "duovigintilliard", "trevigintillion", "trevigintilliard", _
     "quattuorvigintillion", "quattuorvigintilliard", "quinvigintillion", _
     "quinvigintilliard", "sexvigintillion", "sexvigintilliard", _
     "septenvigintillion", "septenvigintilliard", "octovigintillion", _
     "octovigintilliard", "novemvigintillion", "novemvigintilliard", _
     "trigintillion", "trigintilliard", "untrigintillion", _
     "untrigintilliard", "duotrigintillion", "duotrigintilliard", _
     "tretrigintillion", "tretrigintilliard", "quattuortrigintillion", _
     "quattuortrigintilliard", "quintrigintillion", "quintrigintilliard", _
     "sextrigintillion", "sextrigintilliard", "septentrigintillion", _
     "septentrigintilliard", "octotrigintillion", "octotrigintilliard", _
     "novemtrigintillion", "novemtrigintilliard", "quadragintillion", _
     "quadragintilliard", "unquadragintillion", "unquadragintilliard", _
     "duoquadragintillion", "duoquadragintilliard", "trequadragintillion", _
     "trequadragintilliard", "quattuorquadragintillion", _
     "quattuorquadragintilliard", "quinquadragintillion", _
     "quinquadragintilliard", "sexquadragintillion", "sexquadragintilliard", _
     "septenquadragintillion", "septenquadragintilliard", _
     "octoquadragintillion", "octoquadragintilliard", _
     "novemquadragintillion", "novemquadragintilliard", "quinquagintillion", _
     "quinquagintilliard" _
  )

  sBigWordsDE() = Array( "", "Tausand", _
     "Milliarde", "Billion", "Billiarde", "Trillion", "Trilliarde", _
     "Quadrillion", "Quadrilliarde", "Quintillion", "Quintilliarde", _
     "Sextillion", "Sextilliarde", "Septillion", "Septilliarde", _
     "Oktillion", "Oktilliarde", "Nonillion", "Nonilliarde", _
     "Dezillion", "Dezilliarde", "Undezillion", "Undezilliarde", _
     "Duodezillion", "Doudezilliarde", "Tredezillion", _
     "Tredizilliarde", "Quattuordezillion", "Quattuordezilliarde", _
     "Quindezillion", "Quindezilliarde", "Sexdezillion", _
     "Sexdezilliarde", "Septendezillion", "Septendezilliarde", _
     "Oktodezillion", "Oktodezilliarde", "Novemdezillion", _
     "Novemdezilliarde", "Vigintillion", "Vigintilliarde", _
     "Unvigintillion", "Unvigintilliarde", "Duovigintillion", _
     "Duovigintilliarde", "Trevigintillion", "Trevigintilliarde", _
     "Quattuorvigintillion", "Quattuorvigintilliarde", "Quinvigintillion", _
     "Quinvigintilliarde", "Sexvigintillion", "Sexvigintilliarde", _
     "Septenvigintillion", "Septenvigintilliarde", "Oktovigintillion", _
     "Oktovigintilliarde", "Novemvigintillion", "Novemvigintilliarde", _
     "Trigintillion", "Trigintilliarde", "Untrigintillion", _
     "Untrigintilliarde", "Duotrigintillion", "Duotrigintilliarde", _
     "Tretrigintillion", "Tretrigintilliarde", "Quattuortrigintillion", _
     "Quattuortrigintilliarde", "Quintrigintillion", "Quintrigintilliarde", _
     "Sextrigintillion", "Sextrigintilliarde", "Septentrigintillion", _
     "Septentrigintilliarde", "Oktotrigintillion", "Oktotrigintilliarde", _
     "Novemtrigintillion", "Novemtrigintilliarde", "Quadragintillion", _
     "Quadragintilliarde", "Unquadragintillion", "Unquadragintilliarde", _
     "Duoquadragintillion", "Duoquadragintilliarde", "Trequadragintillion", _
     "Trequadragintilliarde", "Quattuorquadragintillion", _
     "Quattuorquadragintilliarde", "Quinquadragintillion", _
     "Quinquadragintilliarde", "Sexquadragintillion", _
     "Sexquadragintilliarde", "Septenquadragintillion", _
     "Septenquadragintilliarde", "Oktoquadragintillion", _
     "Oktoquadragintilliarde", "Novemquadragintillion", _
     "Novemquadragintilliarde", "Quinquagintillion", "Quinquagintilliarde" _
  )

  Dim i As Integer
  Dim iInt As Integer
  Dim s As String
  Dim dInt As Double

     
  REM Chop off the decimal portion.
  dInt = Fix(n)
  If (dInt < 1000) Then
    NumberToText = SmallIntToText(CInt(dInt))
    Exit Function
  End If

  REM i is the index into the sBigWords array
  i = 0
  s = ""
  Do While dInt > 0
    iInt = CInt(dInt - Fix(dInt / 1000) * 1000)
    If iInt <> 0 Then
      If Len(s) > 0 Then s = " " & s
      s = SmallIntToText(iInt) & " " & sBigWordsUSA(i) & s
    End If
    i = i + 1
    dInt = Fix(dInt / 1000)
    'Print "s = " & s & " dInt = " & dInt
  Loop
  NumberToText = s
End Function
Meine Version für die Ausgabe in Deutsch: Funktion ZahlWort
Diese (benutzerdefinierte) Funktion übersetzt den nummerischen Wert eines Zellbezugs:

Wenn in der Zelle A1 der Wert 1234,56 steht, so ergibt die Formel =ZahlWort( A1 ) in einer anderen Zelle eingegeben, die Anzeige: eintausendzweihundertvierunddreißig 56/00