이번 포스팅에서는 예상 배당에 대한 정보가 제공되지 않을 때 이를 처리하는 방법에 대해서 알아보려고 한다.
국내 주식의 직전 배당금과 예상 배당금 정보를 시트로 가져오는 방법에 관한 포스팅을 한 적이 있었다. 그런데 지난번 포스팅에서도 그랬듯이 종목에 따라 예상 배당에 대한 정보가 제공되기도 하고 그렇지 않기도 하다. 제공이 되지 않는 경우에 어떻게 처리할지에 대해서 고민을 했었고, 실제로 두 가지 방법을 생각해서 시트에 구현해봤었다. 오늘은 그 두 가지 방법에 대해서 각각 알아보려고 한다.
1. 직전 배당금으로 대체하는 방법
올해 말 예상 배당금에 대한 정보가 없을 때, 그냥 직전 배당금 정보로 대체하는 방법이 있다. 하지만 이 방법은 약간 위험 부담이 있다. 왜냐하면 배당금이 줄어들 가능성도 충분히 있기 때문이다.
이 경우 다음과 같은 함수를 사용하면 된다. 아래의 식 전체가 하나의 셀에 들어가야 한다.
=if(ISBLANK(INDEX(IMPORTHTML("https://finance.naver.com/item/main.nhn?code="&A12,"Table",4),17,5)), INDEX(IMPORTHTML("https://finance.naver.com/item/main.nhn?code="&A12,"Table",4),17,4), INDEX(IMPORTHTML("https://finance.naver.com/item/main.nhn?code="&A12,"Table",4),17,5))
식이 조금 복잡해 보이지만 괄호 안쪽부터 하나씩 뜯어보자.
isblank 함수의 구조는
isblank(A2)
위와 같다. A2 셀이 비어있으면 참이고, 비어있지 않으면 거짓이다.
if 함수의 구조는 다음과 같다.
if(조건, 참인 경우의 출력할 값, 거짓인 경우 출력할 값)
조건이 참이면 첫 번째로 표시된 값을, 거짓이면 두 번째로 표시된 값을 출력하게 된다.
즉 위의 식은
INDEX(IMPORTHTML("https://finance.naver.com/item/main.nhn?code="&A12,"Table",4),17,5)의 값이
1. 비어있으면 INDEX(IMPORTHTML("https://finance.naver.com/item/main.nhn?code="&A12,"Table",4),17,4)을 출력
2. 비어있지 않으면 INDEX(IMPORTHTML("https://finance.naver.com/item/main.nhn?code="&A12,"Table",4),17,5)를 출력
하라는 의미가 된다.
관련 포스팅에서 언급했었지만
INDEX(IMPORTHTML("https://finance.naver.com/item/main.nhn?code="&A12,"Table",4),17,4)은 네이버 금융에서 해당 종목의 직전 배당금을 가져오는 함수이다.
INDEX(IMPORTHTML("https://finance.naver.com/item/main.nhn?code="&A12,"Table",4),17,5)는 네이버 금융에서 해당 종목의 예상 배당금을 가져오는 함수이다.
아래 이미지는 예상 배당이 공란인 경우의 이미지이다.
위의 식을 실제로 적용해보자.
원래 공란이었던 대신증권우의 예상 배당 셀이 직전 배당과 같은 값으로 채워졌다.
2. -로 대체하는 경우
이것은 공란을 그냥 -로 대체해버리는 경우이다. 이 방법이 더 안전하다고 생각하는 투자자도 있을 것이라고 생각한다.
이 경우에도 완전히 같은 함수를 사용한다. 아래의 식 전체가 하나의 셀에 들어가야 한다.
=if(ISBLANK(INDEX(IMPORTHTML("https://finance.naver.com/item/main.nhn?code="&A8,"Table",4),17,5)), "-", INDEX(IMPORTHTML("https://finance.naver.com/item/main.nhn?code="&A8,"Table",4),17,5))
위의 함수를 말로 설명하면 네이버 금융에서 예상 배당에 대한 정보가 blank이면(isblank) "-"을, blank가 아니면 해당 값을 셀에 출력하라는 의미이다.
-은 문자열이기 때문에 반드시 따옴표로 묶어 주어야만 한다. 그렇지 않으면 에러 메시지가 발생한다.
실제로 적용해보자.
위의 경우처럼 예상 배당 셀에 -이 출력되었다.
관련 포스팅에서도 이야기했듯이 네이버 금융의 각 종목 정보를 보면 예상 배당 관련하여 "컨센서스(E) : 최근 3개월간 증권사에서 발표한 전망치의 평균값입니다"라는 문구가 명기되어 있다. 즉, 이는 예상치일 뿐이니 참고치로만 사용하는 것이 좋겠다.
P.S.
불러온 값이 blank가 아니라 error 인 경우를 처리하는 포스팅도 따로 올려두었으니 참고하면 좋을 것이다.
'재테크 > 구글 스프레드시트' 카테고리의 다른 글
구글 스프레드시트 주식 배당 관리 - 15. 원화 1000단위 콤마 표시 (1) | 2022.03.19 |
---|---|
구글 스프레드시트 주식 배당 관리 - 14. 미국, 국내 주식 합산 시트 만들기 (3) | 2022.03.18 |
구글 스프레드시트 주식 배당 관리 - 12. 내 배당수익률 계산하고 수익률에 따라 색깔 넣기 (2) | 2022.03.16 |
구글 스프레드시트 주식 배당 관리 - 11. 총수익률 표시하고 색깔 넣기 (4) | 2022.03.15 |
구글 스프레드시트 주식 배당 관리 - 10. 주가 상승 하락 화살표 넣기 (3) | 2022.03.14 |