Tutorial/Power BI 快速入門

用 Power Query 將匯率載入 Power BI

喺 Power BI Desktop 貼入 M 查詢,將 JSON 轉成貨幣表,發布之後亦可以繼續排程更新。

ERexchangerate.dev·Aug 5, 2026·5 min

Power BI 已經有需要嘅連接器。建立空白查詢,用 Web.Contents 呼叫 API。Host 保持固定,endpoint 放入 RelativePath,Power BI Service 更新 semantic model 時先認得到資料來源。

Key points
進階編輯器貼入 M code。
固定 https://api.exchangerate.dev,用 RelativePath 放 endpoint。
每隻貨幣一行,並保留來源同更新時間。
key 由 header 傳送,所以資料來源憑證揀匿名
PBIX 編輯者可能睇到查詢;廣泛派發就用 server-side proxy。

建立空白查詢

先建立免費 key。喺 Power BI Desktop 揀取得資料 → 空白查詢,再喺 Power Query 編輯器開檢視 → 進階編輯器

貼上 M 查詢

Power Query M · Advanced Editorcopy
let
    ApiKey = "exr_live_replace_with_your_key_here",
    Base = "USD",
    Symbols = "EUR,GBP,JPY",
    Response = Json.Document(
        Web.Contents(
            "https://api.exchangerate.dev",
            [
                RelativePath = "v1/latest/" & Base,
                Query = [symbols = Symbols],
                Headers = [Authorization = "Bearer " & ApiKey]
            ]
        )
    ),
    Rates = Record.ToTable(Response[rates]),
    Renamed = Table.RenameColumns(
        Rates,
        {{"Name", "currency"}, {"Value", "rate"}}
    ),
    WithBase = Table.AddColumn(Renamed, "base", each Response[base], type text),
    WithSource = Table.AddColumn(WithBase, "source", each Response[source], type text),
    WithUpdatedAt = Table.AddColumn(
        WithSource,
        "data_updated_at",
        each DateTimeZone.FromText(Response[data_updated_at]),
        type datetimezone
    )
in
    WithUpdatedAt

換走示例 key,撳完成,再將查詢命名做 FxRates。預覽應該分開顯示 EUR、GBP 同 JPY。

檢查資料類型

currencybasesource 用文字,rate 用小數,data_updated_at 用日期/時間/時區,然後撳關閉並套用

發布同設定排程更新

喺 Power BI Service 打開 https://api.exchangerate.dev 嘅資料來源憑證,揀匿名。M 查詢已經用 Authorization header 傳 key。更新頻率按報表需要設定。

RelativePath 避免動態資料來源錯誤
Power BI 要認到固定 host。將 domain 留喺 Web.Contents,endpoint path 放入 RelativePath,發布之後先可以穩定更新。

M parameter 唔係密碼保險箱

可以編輯 PBIX 或查詢嘅人可能睇到 key。細型內部 workspace 可以咁用;如果檔案會廣泛分享,改用 server-side proxy。

只屬指示性匯率
適合報表、分析、規劃同顯示,唔係可以成交嘅報價,亦唔可以用作結算。
ER
exchangerate.dev
為開發者提供嘅整合指南。

Keep reading

TutorialLive exchange rates in Excel with Power QueryRead ReferenceHistorical exchange rate APIRead TutorialGet exchange rates in n8nRead
更多比較Fixer vs exchangerate.devOpen Exchange Rates vs exchangerate.devCurrencylayer vs exchangerate.dev
學習Reading source and market_session in your pipelineIndicative vs executable FX rates: what a rates API actually gives youECB reference rates, explained
即時匯率EUR/USDGBP/USDUSD/JPY