Clever-Excel-Forum

Normale Version: Formel funktioniert nicht international
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Hallo Excel - experts...

ich habe nun schon lange nach einem Problem von mir geguckt aber leider keine Lösung gefunden:

Zur Info vorab: Ich habe meinen Rechner auf Englisch eingestellt, also arbeite ich mit , als Trennstellen in Formeln (Eventuell ist auch hier das Problem)
- Bei mir funktioniert die Formel einwandfrei!

Ich habe eine Excel Datei, die ich in mehreren Ländern verwende. Grundsätzlich funktioniert alles, jedoch ist dort eine Formel die bei den "anderen" nicht funktioniert (Schweden, Schweiz)
- Das Ergebnis der Berechnung ist bei denen dann "-" also WennFehler => Dann "-"

Kann es sein, dass die Formel bei denen nicht automatisch auf deren länderspezifische Einstellungen umstellt?
- Ich habe schon die Einstellung gesehen, das man dieses Lokal bei sich ändern kann, aber dann ändern sie das ja "für immer" oder jedes mal, wenn sie diese Datei verwenden.

Vielleicht suche ich auch an einer falschen Stelle.
- Gibt es eine Einstellung die ich eventuell getätigt habe oder nicht die das erlaubt

Nun suche ich nach neuen Ansätzen oder noch besser Lösungen Smile

Vielen Dank schonmal, ich habe keine Ahnung ob diese Anfrage so ausreicht...  Undecided

Hier ist meine Formel. => Eingetragen in T15

Diese soll folgendes bewirken: 
- In Zelle B15 steh eine Formel drin, hier soll an einer Bestimmte Stelle in der Formel eine Zahl ermittelt werden und dann in einer Mastertabelle ein entsprechender Wert dazu wiedergegeben werden.

=WENNFEHLER(WENN(R15 = "ž",
SVERWEIS(INDIREKT("[Mastertabelle_TS.xlsm]Sprachen!$F$"&WENN(TEIL(FORMELTEXT(B15), 12, 1)=",", TEIL(FORMELTEXT(B15), 11, 1),
WENN(TEIL(FORMELTEXT(B15), 13, 1)=",", TEIL(FORMELTEXT(B15), 11, 2),
WENN(TEIL(FORMELTEXT(B15), 14, 1)=",", TEIL(FORMELTEXT(B15), 11, 3),
WENN(TEIL(FORMELTEXT(B15), 15, 1)=",", TEIL(FORMELTEXT(B15), 11, 4), ""))))),
tbl_1[#Daten],INDIREKT("TSA!$G$3"),FALSCH),
""), "-")
Hallo,

Formeln werden von Excel in die jeweiligen Sprachen automatisch übersetzt. Mir zum Beispiel ist nicht verständlich, was genau Du erreichen
möchtest. Warum zerlegst Du eine Formel? Wie lautet diese. Ich würde vorschlagen, Du lädst anonymisierte Beispieldateien hier hoch.

Gruß
Danke schonmal für die schnelle Reaktion!

Die Formel ist nur untereinander geschrieben es ist aber genau diese Formel. Ich habe das Gefühl, dass es nicht wirklich an der Formel hängt. Sondern dass irgendeine Einstellung die Funktion der Formel verhindert.

Kann leider keine Beispieldatei hochladen, dass diese Funktionieren würde, wäre mehrere Dateien und Bedingungen zu erfüllen... 

Ich weiß auch dass es vielleicht eine komische Anfrage ist. 

Ich glaube die Formel funktioniert irgendwie nicht automatisch.
Moin

Das Problem könnte die Funktion FORMELTEXT() sein.
Die Formeln werden sprachabhängig übersetzt. Wenn du nun explizit auf ein Komma in der Formel in B15 abfragst dann funktioniert das nur bei den Sprachen die ebenfalls ein Komma verwenden. Alle anderen fallen durch.
Ich glaube das ist der Ansatzpunkt!

nochmal zur Erklärung:

Ich suche mit dieser Formel:

=WENNFEHLER(WENN(R15 = "ž",
SVERWEIS(INDIREKT("[Mastertabelle_TS.xlsm]Sprachen!$F$"&WENN(TEIL(FORMELTEXT(B15), 12, 1)=",", TEIL(FORMELTEXT(B15), 11, 1),
WENN(TEIL(FORMELTEXT(B15), 13, 1)=",", TEIL(FORMELTEXT(B15), 11, 2),
WENN(TEIL(FORMELTEXT(B15), 14, 1)=",", TEIL(FORMELTEXT(B15), 11, 3),
WENN(TEIL(FORMELTEXT(B15), 15, 1)=",", TEIL(FORMELTEXT(B15), 11, 4), ""))))),
Mastertabelle_TS.xlsm!tbl_1[#Daten],INDIREKT("TSA!$G$3"),FALSCH),
""), "-")


in der Zelle B15 in dieser Formel:

=SVERWEIS(380,Mastertabelle_TS.xlsm!tbl_1[#Daten],INDIREKT("TSA!$G$3"),FALSCH)

nach der Zahl die vor dem Komma steht. => Nur steht leider in anderen Ländern kein Komma dort und bekomme deswegen den Fehler.


Habe jetzt auch gesehen, dass bei jemand anders (mit anderen Regionseinstellungen) alles bis auf das gesuchte Komme, welches in "" steht übersetzt wird => Oben mal rot markiert.

Habt ihr vielleicht eine Idee, wie ich die Formel trotzdem anders nutzen / Umschreiben könnte?
FORMELTEXT() fällt nicht nur wegen des Kommas durch sondern auch wegen der übersetzten Funktionsnamen. Die sind ja nicht in allen Sprachen gleich lang und damit steht das Komma/Semikolon nicht mehr an der erwarteten Stelle.

Verzichte auf FORMELTEXT().
Verzichte auf INDIREKT().
Mehr kann man dir ohne detaillierte Kenntnisse deines Modells nicht vorschlagen.
Nicht nur, dass sprachabhänig in Formeln Semikolons zu Kommas werden, sind auch die Längen der einzelnen Funktionen (Bspw. SVERWEIS vs. VLOOKUP / 8 vs. 7) unterschiedlich.
Wenn du schon mit der Funktion FORMELTEXT arbeiten musst, dann musst du dir das Ergebnis wie gewünscht aufbereiten.

Ich komme mit der Formel: =TEIL(FORMELTEXT(B15);FINDEN("(";FORMELTEXT(B15))+1;FINDEN(",";WECHSELN(FORMELTEXT(B15);";";","))-FINDEN("(";FORMELTEXT(B15))-1) auf das gewüsnchte Ergebnis von 380 !!! Dabei ist es auch völlig egal, wie lang die gesuchte Zahl ist.

Da ich somit die Position der Ersten "(" suche, ist es auch egal, ob davor SVERWEIS, VLOOKUP, oder sonst etwas steht. dann wird durch WECHSRELN, das Semikolon in ein Komma umgewandelt und schon funktioniert die Formel und wird auf diese Art und Weise auch wesentlich kürzer.
Da du scheinbar mit deiner eigenen Formel nicht klar kommst, hier nun auch noch die komplette umgestellte Formel:

PHP-Code:
=WENNFEHLER(WENN(R15 "ž",
SVERWEIS(INDIREKT("[Mastertabelle_TS.xlsm]Sprachen!$F$"&
WENN(TEIL(FORMELTEXT(B15),12,1)=",",TEIL(FORMELTEXT(B15),11,1),
WENN(TEIL(FORMELTEXT(B15),13,1)=",",TEIL(FORMELTEXT(B15),11,2),
WENN(TEIL(FORMELTEXT(B15),14,1)=",",TEIL(FORMELTEXT(B15),11,3),
WENN(TEIL(FORMELTEXT(B15),15,1)=",",TEIL(FORMELTEXT(B15),11,4),"sverweis"))))),
Mastertabelle_TS.xlsm!tbl_1[#Daten],INDIREKT("TSA!$G$3"),FALSCH),""),
"wennfehler"


Oder wartest du auf besseres Wetter, bis dir eine Antwort einfällt?