Excel에서 업데이트된 환율

이후 자동 업데이트를 통해 인터넷에서 Excel로 데이터를 가져오는 방법을 반복적으로 분석했습니다. 특히:

  • 이전 버전의 Excel 2007-2013에서는 직접 웹 요청으로 이 작업을 수행할 수 있었습니다.
  • 2010년부터는 파워 쿼리 추가 기능을 사용하여 매우 편리하게 이 작업을 수행할 수 있습니다.

최신 버전의 Microsoft Excel에 있는 이러한 방법에 이제 내장 기능을 사용하여 인터넷에서 XML 형식으로 데이터를 가져오는 다른 방법을 추가할 수 있습니다.

XML(eXtensible Markup Language = Extensible Markup Language)은 모든 종류의 데이터를 설명하도록 설계된 범용 언어입니다. 실제로는 일반 텍스트이지만 데이터 구조를 표시하기 위해 특수 태그가 추가됩니다. 많은 사이트에서 누구나 다운로드할 수 있는 XML 형식의 무료 데이터 스트림을 제공합니다. 우리 나라 중앙 은행 (www.cbr.ru) 웹 사이트, 특히 유사한 기술의 도움으로 다양한 통화의 환율에 대한 데이터가 제공됩니다. 모스크바 거래소 웹사이트(www.moex.com)에서 주식, 채권 및 기타 유용한 정보에 대한 시세를 같은 방식으로 다운로드할 수 있습니다.

버전 2013부터 Excel에는 인터넷에서 워크시트 셀로 XML 데이터를 직접 로드하는 두 가지 기능이 있습니다. 웹 서비스 (웹 서비스) и 필터.XML (필터 XML). 그들은 쌍으로 작동합니다 – 먼저 기능 웹 서비스 원하는 사이트에 대한 요청을 실행하고 XML 형식으로 응답을 반환한 다음 함수를 사용합니다. 필터.XML 우리는 이 답변을 구성 요소로 "파싱"하여 필요한 데이터를 추출합니다.

우리 나라 중앙 은행 웹 사이트에서 주어진 날짜 간격에 필요한 모든 통화의 환율을 가져오는 고전적인 예를 사용하여 이러한 기능의 작동을 살펴보겠습니다. 다음 구성을 공백으로 사용합니다.

Excel에서 업데이트된 환율

이리:

  • 노란색 셀에는 관심 기간의 시작 날짜와 종료 날짜가 포함되어 있습니다.
  • 파란색에는 명령을 사용하는 통화 드롭다운 목록이 있습니다. 데이터 – 검증 – 목록 (데이터 — 검증 — 목록).
  • 녹색 셀에서 함수를 사용하여 쿼리 문자열을 만들고 서버의 응답을 받습니다.
  • 오른쪽 표는 통화 코드에 대한 참조입니다(조금 후에 필요합니다).

가자!

1단계. 쿼리 문자열 구성

사이트에서 필요한 정보를 얻으려면 올바르게 요청해야 합니다. 우리는 www.cbr.ru로 이동하여 메인 페이지의 바닥글에 있는 링크를 엽니다' 기술 자료'- XML을 사용하여 데이터 가져오기 (http://cbr.ru/development/SXML/). 조금 더 아래로 스크롤하면 두 번째 예(예제 2)에서 필요한 것이 있을 것입니다. 즉, 주어진 날짜 간격에 대한 환율을 가져옵니다.

Excel에서 업데이트된 환율

예제에서 볼 수 있듯이 쿼리 문자열에는 시작 날짜(날짜_요구1) 및 엔딩(날짜_요구2) 당사의 관심 기간 및 통화 코드(VAL_NM_RQ), 우리가 얻고자 하는 비율. 아래 표에서 주요 통화 코드를 찾을 수 있습니다.

환율

암호

                         

환율

암호

호주 달러 R01010

리투아니아 리 타스

R01435

오스트리아 실링

R01015

리투아니아 쿠폰

R01435

아제르바이잔 마낫

R01020

몰도바누

R01500

파운드

R01035

РќРμРјРμС † РєР ° СЏ РјР ° СЂРєР °

R01510

앙골라 뉴 콴자

R01040

네덜란드 길더

R01523

아르메니아 드람

R01060

노르웨이 크로네

R01535

벨로루시 루블

R01090

폴란드 즐 로티

R01565

벨기에 프랑

R01095

포르투갈 에스쿠도

R01570

불가리아 사자

R01100

루마니아 류

R01585

브라질 진짜

R01115

싱가포르 달러

R01625

헝가리 포린트

R01135

수리남 달러

R01665

홍콩 달러

R01200

타직소모니

R01670

그리스 드라크마

R01205

타직 루블

R01670

덴마크 크로네

R01215

터키 리라

R01700

미국 달러

R01235

투르크멘 마나 트

R01710

유로

R01239

새로운 투르크멘 마나트

R01710

인도 루피

R01270

우즈베키스탄 화폐

R01717

아일랜드 파운드

R01305

우크라이나의 그리브 나

R01720

아이슬란드 크로네

R01310

우크라이나 카르보바네츠

R01720

스페인 페세타

R01315

핀란드 마크

R01740

이탈리아 리라

R01325

프랑스 프랑

R01750

카자흐스탄 텡게

R01335

체코 코 루나

R01760

캐나다 달러

R01350

스웨덴 크로나

R01770

키르기스스탄 솜

R01370

스위스 프랑

R01775

중국 위안

R01375

에스토니아 크룬

R01795

쿠웨이트 디나르

R01390

유고슬라비아 뉴 디나르

R01804

라트비아어

R01405

남아프리카 랜드

R01810

레바논 파운드

R01420

대한민국 원

R01815

일본 엔

R01820

통화 코드에 대한 전체 가이드는 중앙 은행 웹사이트에서도 볼 수 있습니다. http://cbr.ru/scripts/XML_val.asp?d=0 참조

이제 다음을 사용하여 시트의 셀에 쿼리 문자열을 구성합니다.

  • 텍스트 연결 연산자(&)를 사용하여 결합합니다.
  • 특징 VPR (조회)디렉토리에서 필요한 통화 코드를 찾으려면
  • 특징 TEXT (본문), 슬래시를 통해 주어진 패턴 일-월-년에 따라 날짜를 변환합니다.

Excel에서 업데이트된 환율

="http://cbr.ru/scripts/XML_dynamic.asp?date_req1="&ТЕКСТ(B2;"ДД/ММ/ГГГГ")&  "&date_req2="&ТЕКСТ(B3;"ДД/ММ/ГГГГ")&"&VAL_NM_RQ="&ВПР(B4;M:N;2;0)  

2단계. 요청 실행

이제 우리는 기능을 사용합니다 웹 서비스 (웹 서비스) 생성된 쿼리 문자열을 유일한 인수로 사용합니다. 대답은 긴 XML 코드 줄입니다(전체 내용을 보려면 줄 바꿈을 켜고 셀 크기를 늘리는 것이 좋습니다).

Excel에서 업데이트된 환율

3단계. 답변 파싱

응답 데이터의 구조를 더 쉽게 이해하려면 온라인 XML 파서(예: http://xpather.com/ 또는 https://jsonformatter.org/xml-parser) 중 하나를 사용하는 것이 좋습니다. XML 코드의 형식을 시각적으로 지정하고 들여쓰기를 추가하고 구문을 색상으로 강조 표시할 수 있습니다. 그러면 모든 것이 훨씬 더 명확해질 것입니다.

Excel에서 업데이트된 환율

이제 코스 값이 태그로 구성되어 있음을 분명히 알 수 있습니다. ..., 날짜는 속성입니다. 날짜 태그에서 .

그것들을 추출하려면 시트에서 10개(또는 그 이상 – 여백이 있는 경우)의 빈 셀을 선택하고(XNUMX일 날짜 간격이 설정되었기 때문에) 수식 입력줄에 함수를 입력합니다. 필터.XML (필터XML):

Excel에서 업데이트된 환율

여기서 첫 번째 인수는 서버 응답(B8)이 있는 셀에 대한 링크이고 두 번째 인수는 필요한 XML 코드 조각에 액세스하고 추출하는 데 사용할 수 있는 특수 언어인 XPath의 쿼리 문자열입니다. 예를 들어 여기에서 XPath 언어에 대한 자세한 내용을 읽을 수 있습니다.

수식을 입력한 후 키를 누르지 않는 것이 중요합니다. 엔터 버튼, 및 키보드 단축키 Ctrl 키+변화+엔터 버튼, 즉 배열 수식으로 입력합니다(중괄호 주위가 자동으로 추가됨). Excel에서 동적 배열을 지원하는 최신 버전의 Office 365가 있는 경우 간단한 엔터 버튼, 그리고 미리 빈 셀을 선택할 필요가 없습니다. 함수 자체는 필요한 만큼의 셀을 사용합니다.

날짜를 추출하기 위해 동일한 작업을 수행합니다. 인접한 열에서 여러 개의 빈 셀을 선택하고 동일한 기능을 사용하지만 다른 XPath 쿼리를 사용하여 Record 태그에서 Date 속성의 모든 값을 가져옵니다.

=FILTER.XML(B8;”//레코드/@날짜”)

이제 미래에 원래 셀 B2 및 B3의 날짜를 변경하거나 B3 셀의 드롭다운 목록에서 다른 통화를 선택하면 중앙 은행 서버에서 새 데이터를 참조하여 쿼리가 자동으로 업데이트됩니다. 수동으로 업데이트를 강제 실행하려면 키보드 단축키를 추가로 사용할 수 있습니다. Ctrl 키+다른+F9.

  • 파워 쿼리를 통해 비트코인 ​​환율을 Excel로 가져오기
  • 이전 버전의 Excel에서 인터넷에서 환율 가져오기

댓글을 남겨주세요.