3. 기타/게임

웹브라우저 게임 트라비안 방어 및 시터 운영 2/2, 조건부 서식과 셀 서식

래빗 크리스 2009. 3. 15. 01:14

이곳에서 설명하는 엑셀 내용은 아래 list.xls 파일에 담겨 있고, 엑셀 2003 기준으로 설명을 하였다.
엑셀 2007의 경우 UI 면에서 초보자가 입문하기 쉽도록 구성 되었고, 2003 에 비해 제한 조건이 상당히 많이 개선 되었지만..
글쎄..? 그 덕에 리소스를 많이 잡아 먹고, 퍼포먼스가 느려졌다는 단점이 있다.
엑셀은 원래 속도가 생명이 아닌가 싶다. 초보자인 경우 속도 보다는 기능이겠지만 말이다.
게다가 2003 에 익숙한 사용자는 2007 로 쉽게 넘어가기 어려운듯 하다.
오늘은 약속대로 엑셀을 이용한 시터 활동에 대해 알아 본다.
전체 그림은 아래 그림과 같다. 자, 어떤 기능을 어떻게 구현하는지 확인해 보자.
일단, 현재 보유량을 기준으로 이것이 약탈을 당할 정도로 차고 넘치는지..
보유량이 약탈을 당하는 시점이 언제가 될른지.. 안심 하고 다른 일을 하거나 자도 되는지 알 수 있다.
시터가 되면 관리하고 있는 부족이 약탈을 당하지 않도록 지켜주어야 하는 의무가 있기 때문에 필요한 내용이다.
빌딩이나 자원을 증설하려면 필요한 자원이 얼마나 되고 얼마나 시간이 소요되는지..
이를 통해서 지금 타이밍이 어떤 빌딩이나 어떤 자원에 투자되어야 하는지 시뮬레이션이 된다.
그리고, 각 부족들 간의 거리가 얼마나 떨어져 있는지를 체크해서..
자원을 주고 받는 시간이 더 많이 걸리는지, 장터에서 교환하는 것과 그냥 기달리는 것이 나은지 비교 근거가 된다.



가장 기본적인 입력내용이 '현재 보유량' 이다. 이것은 직접 입력을 해야 한다.
시터를 맡고 있는 두개의 아이디와 동일 컴퓨터를 이용하고 있는 제삼의 아이디, 그리고 본인 아이디 이렇게 4개다.
트라비안의 경제는 아래와 같이 4가지 자원으로 구성되어 있고, 이들의 발란스를 잘 맞춰서 경제를 이끌어 가야 한다.
어느 한쪽이 모자르면 그 모자른 만큼, 발전이나 군대의 육성 등에 영향을 미치기 때문이다.
그러니까 현황을 잘 파악하고 있어야 하고 그러려면 각 자원에 대한 현재 보유량을 필히 체크해야 한다.
옆에 있는 '비밀창고' 수량은, 비밀창고들(단수가 아니고 복수인 점에 유의)에서 저장할 수 있는 총량이다.
그리고 빨간색은 (적색 '500') 비밀창고에서 숨길 수 있는 수량의 2/3 선을 넘을때 표시되도록 조건부 서식이 들어 있다.
다시 말해, 빨간색이 들어오면 약탈을 당할 수 있다는 얘기다.
초보자 보호막이 걷히고 나면 항상 불안한 것이 바로 이거다. 조금 있다가 n 시간 이후의 보유량도 설명하겠다.



셀에 적용된 조건부 서식의 내용은 아래와 같다.
일반적인 쓰임새로는 "셀값이 어쩌구 저쩌구" 라고 설정하겠지만,
수식이 복잡해 지면 아래와 같이 조건에 '수식이' 어쩌구 저쩌구 하다 라고 기술해야 한다.
수식이다 보니 '=' 로 시작한다. 한가지 주의할 것은 수식란에서 화살표 키를 사용하면 대략 곤란해진다는 것.
궁금하면 한번 해 보시라.. 무언가 고치려고 할 때는 고치고자 하는 부분을 마우스로 선택 잡아서 해야 한다.
아니면 'Del' 키나 '백스페이스' 키를 일일이 눌러야 한다.
'서식(F)...' 버튼을 클릭해서 '굵게 적색' 을 입히도록 한다.



하나의 셀에 조건부 서식을 걸려면 상기와 같이 하면 되겠는데,
범위에 대해서 조건부 서식을 부여하려면 어떻게 해야 할까..?
방법은 두가지, 하나의 셀에 조건부 서식을 걸고 나머지는 서식을 선택하여 복사하거나..
처음부터 범위를 잡아서 조건부 서식을 걸면 된다.


아래 그림과 같이 조건부 서식이 적용된 셀을 복사하고, 범위를 잡은 곳 위에서 마우스 오른쪽 버튼을 클릭한다..
'선택하여 붙여넣기(S)...' 를 클릭한다. 간혹 핫키인 '(S)' 를 눌러도 '선택하여 붙여넣기(S)...' 가 실행되지 않기도 하는데..
이것은, 핫키 '(S)' 가 다른 용도로도 이용되기 때문이다. 이럴 때는 스페이스 키를 눌러 보자.
'S' 버튼을 누를때마다 여러개의 명령에 대한 선택이 왔다 갔다 하는데, 스페이스 키를 누르면 현재 선택된 명령이 실행된다.



아래와 같이 '서식(T)' 를 선택하고 '확인' 버튼을 클릭한다.
오른쪽에 있는 '수식 및 숫자 서식(R)' 이나 '값 및 숫자 서식(U)' 은 눌러 봐야 소용없다.



그런데 위와 같이 서식을 모두 적용한다면 원치 않는 셀에도 원본 셀의 서식이 동일하게 먹는다.
이를테면 아래 그림에서 '500' 이 아니라 그 아래에 있는 '262' 에 조건부 서식이 있었다면..?
다른 모든 셀들의 배경색이 노란색으로 바뀌었을 것이다.
이럴때는 범위를 먼저 선택하고 조건부 서식을 먹여야 한다.

범위를 선택한 다음에 조건부 서식을 부여하려면, 범위를 잡기 시작한 셀(기준셀)을 기억해야 한다.
범위를 잡기 시작한 첫번째 셀을 기준으로 수식이 먹기 때문이다.
당연히 수식에도 절대좌표, 상대좌표, 혼합좌표가 먹는다.
아래 그림에서 B10 은 범위를 잡기 시작한 셀, $F10 은 B10 에서 참고할 비밀창고 셀의 혼합좌표.
이렇게 하면 목재나 점토, 철, 작물들에 대하여 비밀창고를 기준으로 조건이 먹는다.
아래 그림은 '목재' 중에서 '45' 가 첫번째 셀로 잡혀 있었던 것이다.
이 부분만 셀의 배경색이 흰색 이고 나머지는 어둡게 색칠 되어 있다.
만약 '작물' 의 '68' 이 첫번째 셀이었다면 아래 조건부 서식에는 '=(E13>($F13*2/3))' 이라고 하여야 한다.
아, 왜 기준셀을 기억해야 하냐구요..? 아래 그림은 범위가 작아서 한 화면에 처음 셀이 보이지만,
범위가 길어져서 한 화면에 안 보이면 어떻게 할거냐구요.. ㅋ


지금까지는 현재 보유량을 알아 보았다. 그리고, 현재 보유량이 약탈을 당할 수 있는지 없는지도 알아 보았다.
만약 지금부터 몇 시간 뒤에 약탈을 당하는지 아닌지를 알아보려면 어떻게 해야 할까..?
이것은 시간당 생산량을 기준으로 아래와 같이 산출하면 된다.
아래 그림의 오른쪽 '시간당 생산량은' 트라비안의 '마을 둘러보기' 화면에서 '생산량' 을 가져다 기입한다.
그리고 아래 그림과 같이 B17 셀부터 E20 까지에 대하여 수식을 입력한다.
J17 셀을 기준으로 하면 '=J10*$B$15+B10' 이라고 입력한다.
그런데 여기서 궁금한 것이 있을 것이다. $B$15 셀에는 '7 시간 이후 보유량' 이라고 문자가 들어 있는데 수식이 먹히다니..
비밀은 '셀서식' 에 있다.



아래 그림과 같이 B15 셀을 마우스 오른쪽 버튼으로 클릭하고 '셀 서식(F)...' 를 클릭한다.



셀 서식 화면에서 표시 형식, 범주의 '사용자 지정' 을 클릭하고 형식(T) 란에 아래와 같이 입력한다.
'#" 시간 이후 보유량"'. # 은 숫자를 따 올때 사용하는 것이고, 문자열은 셀서식에 보조적 수단으로 사용된다.
다시 말해 B15 셀은 실제값이 숫자가 들어 있지만 셀 서식에 의해 화면에 보여질 때는 문자열이 노출되는 것이다.
값은 숫자이고 무늬만 문자열인 셈이다. 왜 수식에 오류가 없었는지 이해가 될 것이다.
이렇게 셀 서식은 유용하게 쓰이는 데가 많다.
숫자의 자릿수가 많은 경우 전체 수치에 대하여 단위를 단단위가 아니가 백만 단위로 하려 할때,
 '###,,' 셀 서식을 사용하면 된다. 천단위 쉼표가 2개다.
이렇게 하면 실제 수치는 단단위로 입력되어 있지만 표시는 백만 단위가 된다.
이때 화면에 표시되는 수치는 소숫점 첫째자리(십만단위)에서 반올림 된다. 표시만 반올림 되는 것이다.



'n 시간 이후 보유량' 에도 조건부 서식을 설정한다.
배경색을 주황으로 한 것은 이것이 자동 계산인 것을 암시하기 위한 것이다.
이것을 막기 위해서 셀 보호를 설정할 수도 있는데, 다음에 기회가 되면  설명하고자 한다.

으음.. 설명이 길어져서 이번에는 조건부 서식과 셀 서식에 대해서 약간만 알아 봤다.
여기서 설명된 부분에 관심을 가지신 분은 상기 설명된 부분을 책이나 동호회, 검색엔진들에서 찾아보기 바란다.
다음에는 나머지 이야기를 풀어 보고자 한다.