본문 바로가기
엑셀 배우기

엑셀 출석부_자동으로 ox 넣는 출석부 만들어 보기_INDEX함수와 MATCH함수 활용

by reviewer_life 2020. 8. 14.
반응형

저는 엑셀초보입니다. 




필요에 의해서 몇일 동안 책을 보고, 인터넷을 참고해서 출석부를 만들어 보았습니다. 며칠 동안 머리 싸매고, 안되는 걸 붙들고 있었습니다. 머리에 쥐가 나네요. 처음 다루어 보는 엑셀! 만만치 않았습니다. 하지만 재미있었습니다. 이게 되네? 하는 순간이 정말 전율이었습니다. 



수백명의 출결을 관리하려고 보니, 누가 출석했는지 결석했는지, 좀 쉽게 체크해보려 합니다. 출입자 명단이 넘어오면, 그걸 엑셀에 넣어주면 출석, 결석이 자동으로 표시되는 걸 만들어 보는게 목표입니다. 일일이 서로 대조하고, 수작업으로 OX를 타이핑하지 않아도, 이름만 따로 기록해주면 OX가 자동 출력하는걸 목표로 만들었습니다. 


전문가가 보기에는 보잘 것 없습니다. 디자인? 따위는 멍멍이 한테 줘버렸습니다. 편리함만 추구했습니다. 완전 자동화? 그건 ACCESS에서.... 저는 반자동, 반수동(?)을 지향했습니다. 


아래 보시는 그림을 예로 들어 보겠습니다. 일단 출석부 형식을 미리 만들어 보았습니다. 하나씩 설명 드리겠습니다. 



전형적인 출석부입니다. 좌측에 이름이 들어가고, 우측열에는 날짜와 출결을 표시하는 공란이 있습니다. 그런데 M열에 보시면 출석현황이 있습니다. 여기 출석현황함수를 넣었습니다. 오른쪽에 데이터입력 부분에 내가 원하는 이름을 넣어주면 출석현황열ox로 자동 표시됩니다. 


사용한 함수는 총 3가지 입니다. 

1) IFERROR

2) MATCH

3) INDEX



M3열을 마우스로 클릭했을 때 나오는 함수는 

=IFERROR(INDEX($P$3:$P$20, MATCH(B3,$O$3:$O$20,0),1),"x")


전체를 보면서 한번 설명드리겠습니다. 위에 보시면 INDEX함수로 P열을 지정했습니다. P3~P20까지 범위를 정해서 "O"라는 글자를 가져오도록 만든겁니다. 


그리고 MATCH함수로 조건을 걸어줍니다. M3에는 B3의 "김가인"의 출석현황을 표시하도록 한건데, 그게 "MATCH(B3" 으로 표시한 겁니다.


그리고 바로 이어서 "$O$3:$O$20" 부분은 O3~O20까지 범위를 지정해주고, "김가인"과 이름이 정확하게 일치하는 데이터를 찾는 역할을 합니다.  (절대값으로 범위를 지정해야 해서 O3:020을 적고, 키보드 F4를 누르면 달러표시가 됩니다. 요건 인터넷에서 찾아보시면 친절한 설명들을 많이 찾으실 수 있습니다.)


MATCH(B3,$O$3:$O$20,0) <- 여기에서 맨 마지막에 붙은 숫자 "0"이 조건을 표시한 것입니다. 정확하게 똑같은 문자열을 찾으라는 뜻입니다. 


(INDEX($P$3:$P$20, MATCH(B3,$O$3:$O$20,0),1) <- 맨 마지막에 숫자 "1"은 첫번째 열을 뜻하는 겁니다. 이건 INDEX함수와 관련이 있습니다. P열이 첫번째 열입니다. 만약에 범위를 P3~Q20까지 지정한다면 Q열은 두번째열이 되는 것입니다. 


그래서 정리하자면 범위 첫번째열인 P열에서 찾아서 M3에 김가인이라는 이름이 있는 경우에 넣어주는 겁니다. 제가 설명해도 복잡하고 이해가 쉽지 않네요. ㅎㅎ 결국 이해될 때까지 혼자가 여러가지 경우를 상정해서 테스트 해보셔야 합니다. 저도 몇가지 테스트를 하면서 겨우겨우 개념을 알아가고 있습니다. 


그리고 세번째로 IFERROR 함수는 이름이 없을 때 오류표시가 나는 걸 해결하기 위해서 넣었습니다. 오류가 났을 시에 X로 표시하라고 넣은 겁니다. 그러니까 나경원이라는 이름이 데이터입력 O열에 없을시에 오류표시가 납니다. 그걸 X로 치환시켜 놓았습니다. 즉 결석처리 되는 것이죠. 


이렇게 해서 출석과 결석이 표시되는 "출석현황"M열이 OX로 자동 표시됩니다. 


자 그럼, 이걸 복사해서 해당하는 날짜에 붙여넣기 하면 되겠습니다. (TIP! "붙여넣기" 할 시에 값으로 붙여넣기 옵션을 선택하셔야 합니다. OX가 제대로 표시됩니다. ^^)


일일이 누가 왔는지 찾지 않아도 됩니다. 그냥 데이터입력 부분에 사람들 이름을 순서 필요없이 넣어주시면 알아서 B열의 명단과 대조해서 찾아줍니다. 


어휴.... 처음으로 엑셀 리뷰해보니 설명하는게 쉽지가 않네요. ^^ 역시 초보라서 조금 무리한 느낌도 없지 않습니다. @_@


위에 예시로 만든 엑셀도 공유하겠습니다. 

아래 파일 클릭! 


좋은 하루 되세요~!

반응형