OpenOffice Calc "if" Formel für Währungen

908
Alan Frazin

Ich habe eine Tabelle mit vielen verschiedenen Währungen ($, Euro, Schekel). Ich möchte den tatsächlichen Preis in der Originalwährung anzeigen und dann den umgerechneten Preis anzeigen (in diesem Fall in Schekel). Ich habe eine Formel dafür mit Excel gefunden, aber wenn ich versuche, es in Openoffice zu verwenden, funktioniert es nicht, ich bekomme einen 508-Fehler. Hier ist die Formel, die ich mir ausgedacht habe:

=IF(LEFT(D12, 1)="$";D12*Conversions.C4;IF(LEFT(D12, 1) = "€";D12*Conversions.B4; D12)) 

Wo D12 die Zelle mit dem ursprünglichen Preis ist, ist Conversions.C4 die Zelle, um $ in Schekel und Conversions umzuwandeln.B4 ist die Zelle, um Euro in Schekel umzuwandeln.

Nebenbei und Bonuspunkten, wenn jemand weiß, wie er eine ständig aktualisierte Währungsumrechnungsformel einfügt (anstatt den Preis jede Woche / jeden Monat / was auch immer manuell nachzuschlagen und manuell zu ändern), würde ich es sehr schätzen.

1
[Fehlercodes berechnen] (https://wiki.openoffice.org/wiki/Calc_Error_Codes): 508 Fehler: Paar fehlt "Zum Beispiel: Schließen von Klammern ohne Öffnen von Klammern oder Fehlen von schließenden Klammern in der Mitte der Formel (fehlende schließende Klammern bei das Ende einer Formel wird automatisch hinzugefügt). " DavidPostill vor 8 Jahren 0
Abgesehen davon liefert Google "Excel-Währungsumrechner" Links zu kostenlosen Excel-Plugins, die die Währungsumrechnung durchführen (und die Wechselkurse regelmäßig aktualisieren), eine herunterladbare Excel-Tabelle mit aktualisierten Kursen und verschiedene andere interessante Artikel zur Währungsumrechnung in Excel. Funktioniert eine davon in OpenOffice Calc? Keine Ahnung, aber es könnte ein Anfang sein. blm vor 8 Jahren 0
Vielen Dank, dass Sie das zitiert haben, David. Ich hatte das schon gesehen und nachgesehen und habe nicht irgendwo gesehen, wo mir eine Klammer fehlte. Wenn Sie es sehen, lassen Sie mich wissen, wo es ist. Ich dachte, dass hier etwas Unheimlicheres im Spiel war, wie die Idee, dass der Test LEFT (D12, 1) = "$" in Openoffice einfach nicht funktionierte. irgendwelche Ideen? BLM, vielen Dank für diese Richtung. Alan Frazin vor 8 Jahren 0
Es kann sein, dass der Wert "currecny" nur durch das Format "angezeigt" wird, während die Zelle selbst nur einen numerischen Wert enthält ... haben Sie das überprüft? Dirk Reichel vor 8 Jahren 0
Dirk, vielen Dank dafür. Ich nahm an, dass dies der Fall war, und dann fand ich die Excel-Lösung mit dem Testen des am weitesten links stehenden Charakters. Aber auch wenn es sich nur um die Formatierung handelt und der Inhalt der Zelle überhaupt nicht verändert wird, sollte es sicherlich eine Möglichkeit geben, die Formatierung zu testen und eine darauf aufbauende if-Anweisung auszuführen, oder? Wenn ich an dieser Stelle nicht bald etwas finde, muss ich Excel verwenden, was ich lieber nicht tun würde. Alan Frazin vor 8 Jahren 0

1 Antwort auf die Frage

1
Lyrl

Der Fehlercode wird durch die Verwendung von Kommas in der LEFTFunktion verursacht, in der Semikolons benötigt werden (OpenOffice erfordert an den meisten Stellen, an denen Excel Kommas verwendet, Semikolons).

Wie in den Kommentaren zu dieser Frage hervorgehoben, sieht OpenOffice eine Zahl mit Währungsformat nur als Zahl, und die LEFTFunktion gibt nur Zahlen aus dieser Zelle zurück.

Um dies zu umgehen, verwenden Sie Text in Spalten, um alle Währungsnummern in Text umzuwandeln. Entweder bei den Originaldaten oder bei einer Kopie in einer anderen Spalte oder einem anderen Blatt, wenn Sie die Formatierung als Nummer auf dem Original beibehalten müssen.

Markieren Sie alle Währungszellen, die Sie in Text konvertieren möchten. Wählen Sie Daten → Text in Spalten. Klicken Sie unten im Popup-Fenster auf die Spalte der Zellen, die Sie konvertieren, um sie zu markieren. Wählen Sie den Spaltentyp "Text" aus. Wiederholen Sie den Vorgang, wenn Sie mehrere Spalten konvertieren. Klicken Sie auf die Schaltfläche OK, um die Konvertierung durchzuführen.

Jetzt gibt Ihre ursprüngliche Formel einen neuen Fehlercode aus, da sie der Mathematik einer Textzeichenfolge widerspricht. Um dies zu beheben, verwenden Sie die Funktion VALUE, um bei Bedarf wieder in eine Zahl zu konvertieren:

=IF(LEFT(D12; 1)="$";VALUE(D12)*Conversions.C4;IF(LEFT(D12; 1) = "€";VALUE(D12)*Conversions.B4; D12)) 
Lyrl, vielen Dank! Das erklärt einiges. Aber ich habe eine Komplikation. Die Tabelle soll ein Gemeinschaftsprojekt sein. Ist es möglich, eine Formel zu haben, die die Daten kontinuierlich in Text umwandelt? Wenn jemand weiß, wie es in Google Docs Spreadsheet gemacht wird, haben wir darüber nachgedacht, es auch auf dieses Dokument zu übertragen. Noch einmal Danke! Alan Frazin vor 8 Jahren 0
Wie werden die Daten eingegeben? Wenn Sie manuell das Format der Spalte auf Text setzen, bevor Sie Daten eingeben, werden alle Werte als Text bezeichnet. Wenn Sie aus einer CSV-Datei importieren, können Sie im Importdialogfeld den Spaltentyp Text auswählen. Wenn Sie sowohl Anzahl- als auch Textkopien benötigen: Ich kenne keine Funktion zum Konvertieren einer Zahl, einschließlich der Anzeigeformatierung, in Text, aber die Funktion `VALUE` konvertiert Text in Zahlen. Sie können die Elemente als Text eingeben und über eine Spalte mit VALUE-Formeln verfügen, um eine separate Spalte mit entsprechenden Zahlen zu erhalten. Lyrl vor 8 Jahren 0