Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
328to332
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
328to332
328to332
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Excel Formeln Übersetzen (Automatisch)?

Excel Formeln Übersetzen (Automatisch)?
27.10.2003 11:38:15
Jenka
Hallo zusammen!
Habe ein Problem mit Übersetzen von Excel-Formeln (German <-> beliebige Sprache) per VBA.

Es existiert eine Funktion unter Excel: Range(...).Formula = XXX
Diese Funktion übersetzt Formeln in Aktuelle Sprache, aber immer nur eine Zeile! (keine Range Bereiche).

Ich dagegen arbeite mit Arrays/ Rangebereichen und da funktioniert die Funktion nicht mehr.
Kennt jemand von euch eine Alternative?

mfg
Jenka

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Excel Formeln Übersetzen (Automatisch)?
27.10.2003 12:37:08
Hans W. Hofmann
Kann ich nicht folgen. Nach Handbuch,

Formula-Eigenschaft

Gibt die Formel des Objekts im A1-Bezugssystem entsprechend der Ländereinstellung für die Makrosprache zurück oder legt sie fest.

Und die Makrosprache ist Englisch und nicht änderbar!
Was willst Du eigentlich machen?

Gruß HW
AW: Excel Formeln Übersetzen (Automatisch)?
27.10.2003 12:53:30
Jenka
Hi,
ich habe eine Vorlage, die Unterschiedliche Vormeln enhält.
Angezeigt werden die Formeln in entsprechenden Ländereinstellungen (z.b. Deutsch, Chinesisch, Englisch , usw...)

jetzt lese ich ganze Bereich mit formeln und Analysiere bzw. erweitere Daten/Formeln
(z.b. Früher: "=SUMME(A1:B1)" nach erweiterung "=SUMME(A1:B20) * SUMME(X1:Y2)")

Alle Daten(Array) wird wieder ins Sheet geschrieben.
zur zeit wird noch mit Deutschen Excel gearbeitet, doch im zukunft sollte es unabhängig von Excel-Sprache sein.

Problem mit "Formula()" ist, wenn ich ein rangebereich mit englischen formeln an sheet zuweise(Deutsche Excel) dann akzeptiert excel englische formeln nicht!
es geht nur zeilenweise mit dieser funktion.

Gruß Jenka
Anzeige
AW: Excel Formeln Übersetzen (Automatisch)?
27.10.2003 13:13:01
Hans W. Hofmann
Also mal der Reihe nach, ich sehe immer noch nicht das Problem:
Wenn Du mit .Formula eine Formel abgreifst, dann wird die in Englisch, egal unter welcher Sprache die Eingabe erfolgte, ein/ausgegeben.
Greifst Du mit .FormulaLocal zu erhälst Du die in der loacal eingestellten Sprache.
Sprachunabhängigkeit erhälst Du automatisch über die englische Form .Formula.
Was musst Du denn analysieren?

Gruß HW
AW: Excel Formeln Übersetzen (Automatisch)?
27.10.2003 13:31:17
Jenka
Hallo Hans,
wenn du kein Englisches Excel hast dan probiermal diese beispiel Code aus,
dan verstehst du es:

public

Sub test()
Dim aData
aData = Range("a1:b3").Formula
aData(1, 1) = "=sum(a1:a20)"
aData(1, 2) = "=sum(b1:b20)"
Range("a1:b3").Formula = aData
End Sub


Mein excel akzeptiert die formeln nicht! (#NAME?)

Gruß Jenka
Anzeige
AW: Excel Formeln Übersetzen (Automatisch)?
27.10.2003 14:09:19
Hans W. Hofmann
Naja, so wird das ja auch nix - bist Du sicher dass Du als VBA-Profi durchgehst ;-)...

Dein Problem hat nix mit Sprachabhängigkeiten zu tun!

aData = Range("a1:b3").Formula
Definiert einen Variant aData(1 to 3, 1 to 2 ) der die englischen Formeltexte aus dem referenzierten Range enthält. Wozu das? Wieso liest Du den Bereich aus?

Range("a1:b3").Formula = aData
Sowas geht latürnich garnet, weil Du EINEM Range nur EINE Formel zuweisen kannst. Du kannst im Tabellenblatt auch keine 2 zwei (unterschiedlichen) Formeln gleichzeitig eingeben - kann auch net gehen, weil Abhängigkeiten zwischen den Formeln bestehten, die Hierachisch aufgelöst werden müssen und den Berechnungsbaum bilden.

Was Du letzt endlich geschieben hast ist

Range("A1").Formula = "=sum(a1:a20)"
Range("B1").Formula = "=sum(b1:b20)"

was dann einen Zirkelbezug ergeben würde, der noch entfernt werden müsste.
Was wollest Du denn mit obiger Konstruktion eigentlich erreichen?

Gruß HW
Anzeige
AW: Excel Formeln Übersetzen (Automatisch)?
27.10.2003 14:32:31
Jenka
Hi!
>>aData = Range("a1:b3").Formula
>>Definiert einen Variant aData(1 to 3, 1 to 2 ) der die englischen Formeltexte aus dem referenzierten Range enthält. Wozu das? Wieso liest Du den Bereich aus?

Englische Formeltexte sind Standart. Wie gesagt die formeln werden danach verändert (bezüge werden erweitert!)

>>Range("a1:b3").Formula = aData
>>Sowas geht latürnich garnet, weil Du EINEM Range nur EINE Formel zuweisen kannst. Du kannst im Tabellenblatt auch keine 2 zwei (unterschiedlichen) Formeln gleichzeitig eingeben - kann auch net gehen, weil Abhängigkeiten zwischen den Formeln bestehten, die Hierachisch aufgelöst werden müssen und den Berechnungsbaum bilden.

Das funktioniert wunderbar (nur nicht sprachunabhängig), und das benutze ich schon seit jahren. Das Bringt for allem Performance!

>>Was Du letzt endlich geschieben hast ist
>>Range("A1").Formula = "=sum(a1:a20)"
>>Range("B1").Formula = "=sum(b1:b20)"

Genau! Nur im dem Fall muss ich zwei mal (oder noch mehr) hintereinander auf Excel-Sheet zugreifen und im meinem beispiel nur zum lesen und wieder zum schreiben (2 mal!)

Gruß
Jenka
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige