通貨と単位の変換リファレンス
通貨と単位の変換。 calc ルールは、金額を別の通貨に、または数量を別の単位に変換して結果を保存します。変換式を Value 列に書きます — 対象フィールドは読み取り専用になり、レコードを保存するたびに再計算されます(入力中もライブで更新されます)。4 つの関数があります — 2 つはワークブック内の変換テーブルを読み取り、残り 2 つはテーブルを一切必要としません:
| 関数 | 動作 |
|---|---|
currency_conversion(amount, from, to) | ワークブック独自の Exchange Rates テーブルを使って金額を変換します。 |
unit_conversion(quantity, from, to) | ワークブック独自の Unit Conversions テーブルを使って数量を変換します。 |
currency_conversion_api(amount, from, to, date) | ライブ為替レート を使って変換します — テーブルは不要です。date は省略可能です(下記参照)。 |
unit_conversion_api(quantity, from, to) | SheetApps の 組み込み単位テーブル を使って変換します — テーブルは不要です。 |
引数について。 各関数は最初に換算する値(金額または数量のフィールド)を取り、続いて from と to のコードを取ります。currency_conversion_api は任意の 4 つ目の引数として date を取ります。空の値は空のまま(0 にはならない)で、結果は常にターゲットのコードを持ちます — リテラル "EUR" は画面でもエクスポートでもフィールドをユーロに固定します。
コードは固定にも、レコードごとにもできます。 from と to は引用符で囲んだ固定コード("EUR")でも、フィールド名(currency)でも書けます。フィールド名にすると各レコードが自身の通貨や単位から変換されます — 例:currency_conversion(total_amount, currency, "EUR") は各注文の合計をユーロに変換します。変換の前後で計算することもできます(… * 1.02)。
テーブル変換 は 2 つの予約済みルックアップシートを読み取ります:列 From · To · Rate を持つ Exchange Rates と、From · To · Factor を持つ Unit Conversions です。SheetApps は正確なペア、その逆方向、または同一コードの ×1 を使います。ペアが見つからない場合は 保存をブロック し、どのペアを追加すべきかを知らせます。これらのテーブルは マスターデータ でいつでも編集できます — 再アップロードは不要です。
API 変換はテーブル不要です。currency_conversion_api は、無料でキー不要の Frankfurter サービス(frankfurter.dev)から欧州中央銀行の参照レートを取得します:date(日付フィールド、または "2026-07-01" のような ISO 日付)を渡すとその日の公表レートで換算し、省略すると当日のレートを使います。unit_conversion_api は、質量・長さ・面積・体積・温度・時間の一般的な単位(UNECE コードや kg・lb・ft・°C などの日常的な名称)を網羅した組み込みテーブルを使います。どちらも、実行するコンピューターがインターネットに接続していれば公開バンドルでも動作します。
currency_conversion_api は掲載されていないペアを換算できず、そのペアを示すメッセージとともに保存をブロックします。対応していない通貨には、テーブル方式の currency_conversion を使い、レートを自分で用意します:From · To · Rate の行を Exchange Rates シートに追加するか、アプリのマスターデータで管理します。Total EUR は常に € です。ライブレートを取得できず、キャッシュもない場合は、レートサービスに接続できるまで保存がブロックされます。テーブルのペアが欠けている場合も同様に保存がブロックされます。