본문 바로가기
Lotto In/Lotto Tool - 엑셀

로또 엑셀 (2) - 로또 패턴 찾기, 로또 번호 해당 구간만 표시하기.

by 세이대 2020. 5. 2.

로또 엑셀 (2) - 로또 패턴 찾기, 로또 번호 해당 구간만 표시하기.

로또 게임을 즐기기 위해서 다양한 자신만의 기술이 있다면 좋을 것 같다는 생각을 많이 해봤습니다. 가장 쉽게 접할 수 있는 로또 당첨번호 데이터를 정리할 수 있는 프로그램은 엑셀 프로그램이 아닐까요. 엑셀 프로그램을 이용하여 로또 당첨 예상번호를 뽑아낼 수 있다면 그것보다 좋은 것은 없을지도 모르죠. 하지만, 쉬운 일은 아닐지 모릅니다. 로또 예상번호 찾기가 쉽다면 로또 당첨금액이 그렇게 높을 수 없을 테니 말이죠.

로또 패턴 찾기.

하지만, 로또 게임을 즐기기 위한 적당한 무기 하나쯤은 있는게 없는 것보다는 훨씬 좋다는 것은 변함없는 사실입니다. 로또 예상번호를 선정하는 방법은 사람마다 다를 테지만, 결과적으로 어떤 번호를 선정할지 개인마다의 기준은 필요하다는 것은 공통적인 부분이 아닐 수 없습니다. 이런 번호를 선택하는 기준은 사람마다 다르겠지만 말이죠. 일반적으로 가장 많이 사용하는 방법은 패턴, 흐름이라고 할 수 있을 텐데요. 오늘은 엑셀을 이용하여 간단하게 로또 패턴을 찾아보는 것에 대해 이야기를 나눠볼까 합니다. 우선은 원하는 것이 무엇인지 분명하게 생각해 둬야 관련 기능을 설정할 수 있겠죠.

 

제가 생각한 기준은 이렇습니다. 역대 로또 당첨번호에서 특정 범위안의 번호들이 어떤 방식으로 출여하였는지 그 흐름을 파악하기 위한 기능을 설정해 보려 합니다. 다시 말해, 내가 선정한 범위 내의 로또 당첨번호가 어떤 모습인지 보는 것이죠. 말보다는 사진으로 확인하는 게 빠르겠습니다.

로또 구간별 표시하기.

위 움짤의 모습이 제가 엑셀을 통한 구간별 로또 패턴을 찾기 위한 기능을 설정한 모습이랍니다. 오른쪽 상단에 원하는 구간을 입력하면, 왼쪽에 있는 역대 로또 당첨번호들에서 구간에 해당되는 로또 당첨번호가 표현되는 방법이랍니다. 즉, 1번 부터 10번 사이에 존재하는 번호들이 역대 로또 당첨번호로 어떻게 출연되었는지를 파악할 수 있는 방법으로 일종의 로또 패턴을 파악해보는 방법입니다. 물론, 어떻게 활용하여 로또 예상번호를 찾을지는 개개인의 판단에 따라 달라질 수 있겠지요. 지금부터 로또 패턴 찾기, 구간별 역대 당첨번호의 출연 모습을 파악하는 기능을 만들어 보도록 하겠습니다. 

 

저번에 다뤘던 로또 당첨번호별 색으로 표시하기와 동일한 기능인 엑셀의 '조건부 서식'이라는 기능을 활용하여 설정을 할텐데요. 이전 글도 읽어보시면 도움이 되리라 생각이 됩니다.


2020/04/26 - [Lotto In/Lotto Tool - 엑셀] - 로또 엑셀 (1) - 로또 당첨번호 색으로 구분하기.

 

로또 엑셀 (1) - 로또 당첨번호 색으로 구분하기.

로또 엑셀 (1) - 로또 당첨번호 색으로 구분하기. 엑셀 프로그램을 이용한 로또 분석 도구를 만드는 첫 번째 준비는 역대 로또 당첨번호에 대한 기본적은 정보를 얻을 필요가 있을지 모릅니다. 물론, 로또 예상번..

storydamoa.tistory.com


 

로또 패턴 찾기, 로또 번호 해당 구간만 표시하기.

우선 준비물은 역대 로또 당첨번호를 준비해야 겠죠. 움짤은 기본적으로 만들어본 것이기에, 디자인 위치, 원하는 특성은 응용을 통하여 활용하시면 될 것 같습니다. 역대 로또 당첨번호 다운로드하는 게 어려우신 분은 지난번 포스팅을 확인하시면 도움이 되실 겁니다. 이제 설정해 보도록 할게요.

로또 구간별 패턴 찾기 기능 1.

저는 개인적으로 로또 당첨번호를 왼쪽에 정렬해두는게 보기 좋은 것 같아, 위 사진과 같이 역대 로또 당첨번호를 정리해 두고, 오른쪽 상단에 우리가 설정할 구간의 시작점과 끝점을 입력할 셀을 선택해 두었습니다. 어디든 상관없으며, 다른 셀에 설정해 두어도 상관없답니다. 원하시는 곳에 알맞게 설정해 두세요. # 중요한 것은 셀 주소랍니다. #

 

위 사진과 같이 기본적인 준비가 되었다면, 역대 로또 당첨번호에 대한 설정을 합니다. 우선, 우리의 목적은 해당되는 구간에 맞는 번호만 표시가 되면 되겠죠. 따라서, 역대 로또 당첨번호들의 기본적인 글자색은 흰색 또는 무색으로 설정을 해 둡니다. 그럼, 기본적으로 번호가 보이지 않겠죠. 다음 조건부 서식을 활용하여 조건에 맞는 번호들에게 글자색과 배경색을 설정함으로써 우리가 원하는 구간에 포함된 로또 당첨번호들만 우리 눈에 보이게 되는 방법으로 진행해 보도록 하겠습니다. # 여기서 핵심내용은 설명했네요. 활용하실 수 있다면 더 안 보셔도 될 것 같습니다. #

로또 구간별 패턴 찾기 기능 2.

로또 당첨번호들의 글자색을 흰색으로 설정했습니다. 위 사진의 오른쪽을 보시면 1회 차 1번째 번호인 10번이 셀에 입력되어 있지만, 우리 눈에는 인식이 안되죠. 흰색 글씨라서 그렇답니다. 위 셀 내용을 확인하는 곳에 10이라고 잘 표시되어 있다는 것을 알 수 있습니다. 글자 색 설정은 다음과 같습니다.

로또 구간별 패턴 찾기 기능 3.

글자색 선택 간단하죠. 그렇게 준비가 되었다면, 이제 본격적으로 조건부 서식 내용을 지정해 주도록 하겠습니다.

로또 구간별 패턴 찾기 기능 4.
로또 구간별 패턴 찾기 기능 5.
로또 구간별 패턴 찾기 기능 6.

 

'조건부 서식'의 '새규칙' 메뉴 중, '수식을 사용하여 서식을 지정할 셀 결정'을 선택해 줍니다. 이 기능은 조건부 서식이 적용될 셀의 데이터가 특정 조건 (지정한 수식)이 참일 경우 조건부 서식이 적용되며, 거짓일 경우 조건부 서식이 적용되지 않는다는 규칙이 있답니다. 이를 이용할 것인데요. 기본적으로 컴퓨터는 '0'값을 가지면 거짓으로, '1'이상의 값을 가지면 참으로 인식한답니다. 여기서도 이 규칙을 이용하여 수식을 지정해 주도록 할게요. # 이 부분은 조금 어렵게 느껴질 수 있답니다. 차근차근 진행해 볼게요. #

 

우선 우리에게 필요한 기능을 생각해 보도록 하겠습니다. 먼저, 정해진 범위가 있겠죠. 다음으로 조건부 서식이 지정될 셀의 데이터 값이 범위에 포함되는지 안되는지 여부를 파악할 수 있어야 합니다. 그리고 포함이 되면 참 (1 이상 값), 포함되지 않으면 거짓 (0 값)이 결과로 입력되어 엑셀 프로그램이 판단할 수 있게 설정해 주면 되는 것이죠. # 말로하니 어렵지만 실제로는 비교적 간단하답니다. #

 

엑셀에서 참, 거짓을 표현하기 좋은 함수는 ' if ' 함수가 좋습니다. if, countif, sumif 등 if를 활용한 함수는 다양한데요. 이번에는 if, countif 두 함수를 이용하여 적용해 보도록 할게요. 우선은 if, countif 함수에 대해 먼저 알아야겠죠. 

  • if 함수 - 조건문으로 생각하시면 되는데요. 조건의 참, 거짓을 구분하여 정해진 값을 출력해주는 함수입니다.
  • countif 함수 - if 와 같이 조건문이지만, 특정 조건에 해당되는 데이터의 개수를 표현하는 함수입니다.
  • 두 함수의 차이는 정해진 결과를 출력 (if), 범위 내 정해진 조건에 해당되는 데이터의 개수 (countif)로 표현 차이만 있습니다.
  if 함수 contif 함수
형태 =if( 조건, 참일때 결과값, 거짓일때 결과값 ) =countif( 범위, 조건 )
출력값

조건에 부합하면, 설정해둔 참일때 결괏값, 

조건에 부적합하면, 설정해둔 거짓일때 결괏값

지정한 범위의 데이터 중 조건값과 같은 혹은 조건에 부합하는 데이터의 개수 표시
출력 형태 숫자, 문자 숫자

# 간략하게 if 함수, countif 함수의 특징에 대해 살펴봤습니다. 자주 사용되는 함수니 알아두면 좋아요. #

로또 구간별 패턴 찾기 기능 7.

다시금 본론으로 넘어가서, 붉은 배경색으로 되어 있는 부분에 우리의 조건에 맞게 작동될 수식을 넣어보도록 하겠습니다. 해당되는 셀의 값이 구간에 들어가면 참이라는 값 (1 이상의 값)이 나타나도록 함수를 이용해 수식을 넣어주면 되겠습니다. 해당되는 부분의 빈칸을 클릭해 넣어볼게요. 

 

단순하게 생각해서 =if( 조건 <= 셀 값 <= 조건, 1, 0)이라고 넣을 수 있다면 금상첨화라 할 수 있겠지만, 이렇게 되면 if 함수의 조건 부분이 중복이 되는 것이라 작동되지 않습니다. (사실 정확한지는 모르겠지만, 원하는 결과로 작동되지 않아요. 제가 이해한 대로 설명합니다. 더 좋은 방법을 아시면 댓글 달아주세요.)

 

조건부 서식의 설정 부분에는 if함수를 중복으로 활용하여 참, 거짓을 구분하려고 합니다. 결론부터 먼저 살펴볼게요.

우선 기본적으로 처음 선택한 셀일 B4 셀이랍니다. 따라서 검토하고자 하는 B4셀이 우리가 선정한 구간 값이 될 K2셀과 L2셀 사이에 존재하는지의 유무를 참 거짓으로 표현하는 if함수와 최종적으로 0 또는 1로 나타내 줄 if함수를 마지막으로 처리함으로써 최종 결괏값은 0 또는 1로 표현되어 해당 셀에 조건부 서식이 적용될지 안될지 판단하게 됩니다. 조금 더 자세히 살펴볼까요.

위 사진에서 설명한 데로, 우리가 원하는 조건에 부합하면 1, 부합하지 않으면 0으로 표현되도록 설정이 끝났습니다. 확인해 봐야겠죠.

로또 구간별 패턴 찾기 기능 8.

구간 값은 임의로 원하는 값을 선정하도록 합니다. 잘 설정이 되었다면 위 사진과 같은 결과 값을 확인할 수 있습니다. 이제, 이렇게 설정된 '조건부 서식' 내용을 역대 모든 당첨번호에 지정해 줘야겠죠. 우선 설정된 B4셀을 복사해 다른 당첨번호 값이 있는 셀들에 붙여 넣기를 할텐데요. 이때 붙여넣기 옵션에서 '서식'을 선정해 주시면 된답니다.

로또 구간별 패턴 찾기 기능 9.
로또 구간별 패턴 찾기 기능 10.

이렇게 되면 역대 로또 당첨번호에서 원하는 구간별로 패턴 찾기 기능 설정이 마무리가 되었습니다. 이제는 확인하고 싶은 구간을 임의로 변경하면서 원하는 패턴에 대해 찾아보시면 되겠습니다. 디자인적인 측면은 개인의 취향에 따라 변화해 주시면 되겠습니다. 물론, 조건부 서식에서의 서식 설정으로 표시되는 당첨번호의 배경색 및 글자색도 조절하실 수 있습니다. 하지만, 조금 아쉬움이 남지요. 각 회차별 정해진 구간에 해당되는 번호의 개수도 표시해보도록 하겠습니다.

로또 구간별 패턴 찾기 기능 11.

사진과 같이 있는 부분입니다. 아무래도 데이터에 결괏값은 수로 얻는 게 보기에 좋으니 활용해 보도록 하겠습니다. 이번에는 countif 함수를 활용하여 해당 구간에 부합하는 역대 로또 당첨번호들의 개수가 표시되도록 설정해 보겠습니다. 

결론부터 먼저 살펴볼게요. 우선은 해당 범위, 그러니까 역대 로또 당첨번호의 각 회차가 되겠죠. 이 번호들 사이에서 우리가 지정한 구간의 시작보다 크거나 같은 당첨번호의 개수를 먼저 파악합니다. 예를 들어, 1부터 10까지의 범위를 산정하면 로또 당첨번호 중 1보다 큰 당첨번호의 개수를 파악합니다. 이게, 앞부분에 있는 countif 함수의 설정 내용이랍니다.

 

위 사진과 같은 부분이 의미하는 것이 언급한 내용입니다. 하지만, 문제가 있죠. 10보다 큰 것들의 개수도 같이 파악이 됩니다. 그래서 뒷부분에 10보다 큰 당첨번호의 개수를 빼주도록 합니다. 그럼 1 이상 10 이하의 로또 당첨번호 개수를 파악할 수 있게 되는 것이죠. 뒷부분의 countif 함수가 이를 나타내고 있습니다.

로또 구간별 패턴 찾기 기능 12.

그렇게 함수를 이용해 수식을 지정해 주면 위 사진과 같은 결괏값을 얻을 수 있습니다. 우리가 원하는 구간 값은 1부터 10까지 구간에 해당되는 회차별 역대 로또 당첨번호의 개수를 파악하는 것이죠. 구간별 개수가 입력된 셀 아래 셀의 값에 1이라고 잘 나타나 있는 것을 확인할 수 있습니다. 이제 다른 회차에도 적용해야겠죠. 이 부분은 자동 채우기를 이용하시면 된답니다.

로또 구간별 패턴 찾기 기능 13.

구간별 개수가 표시된 셀을 선택하시고, 오른쪽 하단 정사각형으로 표시된 부분을 더블클릭하시거나 드래그하시면 엑셀에서 기본적으로 제공하고 있는 자동 채우기가 완료되는 것을 확인할 수 있습니다.

로또 구간별 패턴 찾기 기능 14.

이제 모든 설정이 끝났습니다. 원하는 구간 혹은 궁금했던 구간에 대하여 역대 로또 당첨번호에서의 패턴을 찾아, 매주 로또 게임을 즐기시면 되겠습니다. 간편한 방법으로 나만의 패턴 찾기 도구가 완성된 것이죠. 잘 활용하셔서 좋은 성적 얻으시면 좋겠네요. 도움이 되었다면, 댓글 혹은 좋아요 부탁드립니다. # 진행하시다 잘 안 되는 부분이 있으시면 댓글로 남겨주세요. 

댓글