학습/Excel 빠른 시작

Power Query로 Excel에서 실시간 환율 가져오기

Power Query M 스크립트 하나를 Excel에 붙여넣어 새로고침 가능한 FX 표를 불러옵니다. Mac과 Windows에서 모두 작동하고, 추가 기능이 필요 없으며, 무료 등급 안에 여유 있게 들어갑니다.

ERexchangerate.dev·Jun 29, 2026·5분 읽기

워크북 안에 환율이 필요하다면 WEBSERVICE()가 아니라 Power Query를 사용하세요. 아래 쿼리는 /v1/latest/USD를 호출하고, JSON 환율을 두 열짜리 표로 바꾸며, 워크북을 열거나 모두 새로 고침을 클릭하면 갱신됩니다. 워크북이 셀에 숫자를 고정하는 대신 연결을 유지하기 때문에, DCF 입력값, 헤지 시트, 다중 통화 손익계산서에 이 패턴을 사용합니다. 원화 표가 필요하면 아래 쿼리의 대상 통화에 KRW를 지정하세요. Gemini로 Excel 환율 트래커 만들기에서 복사할 프롬프트와 참고 쿼리를 제공합니다. Gemini는 코드를 작성하고 실제 환율 조회와 새로 고침은 Excel이 실행합니다. API 키를 채팅에 붙여 넣지 마세요.

핵심 요점
Power Query M은 Mac과 Windows Excel에 기본 내장되어 있습니다 — 추가 기능도 필요 없고, Windows 전용이라 Mac에서 작동하지 않는 WEBSERVICE()도 필요 없습니다.
/v1/latest/{base} 한 번 호출로 모든 환율을 반환합니다. 예약된 새로고침이 계속 작동하도록 기본 URL을 RelativePath와 분리하세요.
키는 Authorization: Bearer exr_live_...로 전달하거나, 커넥터가 Authorization 헤더를 설정할 수 없다면 X-API-Key를 사용하세요.
무료 등급은 카드 없이 월 10,000회, 분당 12회 요청입니다.
환율은 인디케이티브 값입니다 — 모델링, 분석, 표시용으로 만들어졌으며 거래 정산용이 아닙니다.

무료 API 키 받기

exchangerate.dev/signup에서 가입하세요. 이메일 확인 후 대시보드에 exr_live_로 시작하는 키가 표시됩니다. 복사해두세요 — 이 키를 쿼리에 매개변수로 붙여넣게 됩니다. 무료 등급은 카드 없이 월 10,000회입니다.

Power Query 편집기 열기

Excel 리본에서 데이터 → 데이터 가져오기 → Power Query 편집기 실행을 클릭하세요. 편집기 안에서 홈 → 새 원본 → 빈 쿼리를 클릭한 다음 보기 → 고급 편집기를 클릭하세요. 다음 단계에서 그 상자에 M 쿼리를 붙여넣습니다.

M 쿼리 붙여넣기

편집기 내용을 아래 쿼리로 바꾸고 완료를 클릭한 다음, 오른쪽 패널에서 쿼리 이름을 FxRates로 바꾸세요. RelativePath 인수는 선택 사항이 아닙니다 — 이것이 없으면 Microsoft 365의 예약된 새로고침이 자격 증명 오류로 실패합니다.

Power Query · Advanced Editorcopy
// excel: Power Query M query "FxRates"
// curl-equivalent: https://api.exchangerate.dev/v1/latest/USD
// Private workbook only: do not share or export this query with a key.
// Replace ApiKey with your exchangerate.dev key from /signup
let
    ApiKey = "exr_live_replace_with_your_key_here",
    Base = "USD",
    Source = Json.Document(
        Web.Contents(
            "https://api.exchangerate.dev",
            [
                RelativePath = "v1/latest/" & Base,
                Timeout = #duration(0, 0, 0, 10),
                Headers = [#"Authorization" = "Bearer " & ApiKey]
            ]
        )
    ),
    Rates = Record.ToTable(Source[rates]),
    Renamed = Table.RenameColumns(Rates, {{"Name", "currency"}, {"Value", "rate"}})
in
    Renamed

워크시트로 불러오기, 익명 선택

홈 → 닫기 및 로드를 클릭하세요. Excel이 새 시트에 통화와 환율, 두 열짜리 표를 놓습니다. 처음 실행할 때 Excel이 https://api.exchangerate.dev 원본을 어떻게 인증할지 묻습니다: 익명을 선택하세요. 키는 URL이 아니라 헤더에 담겨 이동하므로 익명이 맞습니다. 언제든 Ctrl+Alt+F5를 눌러 새로고침할 수 있습니다.

기준 통화 바꾸기 또는 특정 통화쌍만 필터링하기

Base를 바꾸면 모든 환율의 기준이 바뀝니다. 필요한 통화쌍만 반환하려면 symbols 쿼리를 추가하세요 — 행은 줄고 호출은 그대로 한 번입니다:

Power Query · variantscopy
// Re-base every rate to the euro
Base = "EUR"

// Return only the quote currencies you need (one call, fewer rows)
RelativePath = "v1/latest/USD",
Query = [symbols = "EUR,GBP,JPY"]

// One pair, rate calculated for you
RelativePath = "v1/convert/USD/JPY/1"   // read Source[rate]
AI 어시스턴트로 이걸 만들고 있나요?
exchangerate.dev는 MCP 서버와 llms.txt를 제공하므로, Claude, Cursor, ChatGPT가 실시간 스키마를 읽고 이 쿼리를 대신 작성해줄 수 있습니다. 이렇게 요청해보세요: "Authorization 헤더에 내 키를 넣고 RelativePath를 사용해 새로고침이 작동하는, exchangerate.dev에서 USD 환율을 가져오는 Excel Power Query M 쿼리를 작성해줘." MCP 가이드를 참고하세요.

새로고침과 무료 등급 여유

Excel은 자동으로 폴링하지 않습니다. 표는 워크북을 열거나, 모두 새로 고침을 클릭하거나, 데이터 → 쿼리 및 연결 → 속성에서 주기적 새로고침을 설정했을 때 갱신됩니다. 계산해보면 무료 등급 안에 충분히 들어갑니다:

  • 월 10,000회, 분당 12회 요청, 카드 불필요
  • 일반적인 모델은 하루에 몇 번의 호출만 발생시킵니다(열기 + 수동 새로고침 몇 번)
  • 장 운영 시간 동안 5분 간격 자동 새로고침을 해도 하루 약 100회에 그칩니다
  • /v1/latest, /v1/convert, /v1/range, /v1/{date}/{base}를 모두 포함합니다
코드증상해결
401DataSource.Error: 401키가 없거나 잘못되었습니다. ApiKey에 다시 붙여넣은 다음, 데이터 → 데이터 가져오기 → 데이터 원본 설정에서 api.exchangerate.dev에 저장된 자격 증명을 지우세요.
429429 Too Many Requests분당 12회 한도를 넘었습니다. 쿼리별로 새로고침 시점을 분산시키거나 /pricing에서 상위 등급으로 올리세요.
엑셀이 계속 자격 증명을 요구합니다RelativePath를 쓰지 않고 전체 URL로 연결했습니다. 위의 기본 URL + RelativePath로 분리된 쿼리를 그대로 복사하고 익명을 선택하세요.
인디케이티브 환율, 정산용 아님
이 환율은 모델링, 분석, 표시를 위해 발표됩니다. 딜링 견적이 아니므로 거래나 송금 정산에 사용하지 마세요. 모든 응답의 notice 필드에 이 내용이 담겨 있습니다.
쿼리를 만들기 전에 엔드포인트를 테스트하세요
키 없이 /v1/latest/USD를 호출해보고 M 쿼리가 파싱하는 정확한 JSON을 확인할 수 있습니다. 제대로 보인다면, 무료 키로 워크북에 월 10,000회 자체 할당량을 줄 수 있습니다 — 카드 필요 없습니다.
ER
exchangerate.dev
개발자를 위한 연동 가이드.

계속 읽기

TutorialGoogle Sheets에서의 실시간 환율읽기
더 많은 비교Fixer vs exchangerate.devOpen Exchange Rates vs exchangerate.devCurrencylayer vs exchangerate.dev
학습ECB 기준환율 설명Next.js와 TypeScript에서 환율 사용하기Python으로 USD/IDR 환율 알림 만들기
실시간 환율EUR/USDGBP/USDUSD/JPY