1. FAQ
  2. 엑셀(Excel)
  3. AfterEffects
  4. Premiere
  5. Photoshop
  6. ETC

이 게시판은 아별닷컴 회원만 질문을 올릴 수 있습니다. 회원에게 주어지는 특권인셈이지요. 회원이 아닌 분들은 열람만 가능합니다.

사용자목록 필요여부

엑셀수식 조회 수 3256 추천 수 0 2013.02.04 17:23:08

사용OS : XP , 엑셀버젼 : 2007

 

지난번 답변 덕분에 실장의 근무상황은 자동으로 표시하는데 성공한 것 같습니다.

지금 부딪힌 문제는 '방재'시트의 반장의 출근상황(H6:H36)을 자동으로 표시하는 방법이 고민입니다.

 

'주간1,주간2,야간,비번' 이라는 4일 4교대 근무를 하고 있습니다. 아래 근무형태가 4일마다 반복되는 것입니다.

주간 1번째 날은 평일이면 출근해서 출근상황이 1이 되고, 주말과 국경일이라면 쉬므로 0이 됩니다.

주간 2번째 날은 평일이면 출근해서 출근상황이 1이 되고, 주말과 국경일이라면 쉬므로 0이 됩니다.

'야간' 근무일은 주말, 국경일 상관없이 무조건 출근하므로 출근상황이 1,

'비번' 근무일은 주말, 국경일 상관없이 무조건 쉬므로 출근상황이 0,

 

S1 에 그 달의 첫번째 근무형태인 주1,주2,야,비 4가지 중 하나만 입력했을 때

T6~T36 까지에 자동으로 주1,주2,야,비,주1,주2,야,비... 이런 식으로 표시.

예를 들면,

S1 에 '야' 를 입력하면 T6~T36 까지에 자동으로 야,비,주1,주2,야,비,주1,주2... 이런 식으로 표시.

S1 에 '비' 를 입력하면 T6~T36 까지에 자동으로 비,주1,주2,야,비,주1,주2,야... 이런 식으로 표시하게 한 뒤

 

반장의 출근상황(H6:H36) 을 위 조건에 맞춰 0 이나 1을 어떻게 표시하냐가 고민입니다.

  

1) S1 에 그 달의 첫번째 근무형태인 주1,주2,야,비 4가지 중 하나만 입력했을 때 T6~T36 까지에 자동으로 S1의 조건에 따라 4교대 근무형태(주1,주2,야,비)가 표시되는 방법?

2) 반장의 출근상황(H6:H36)에 위 조건에 맞춰 0이나 1을 표시할려면  IF 문을 4개 써야 하는것이 맞을까요?

 

 


댓글 '2'

profile

[레벨:30]아별

2013.02.04 19:44:29
*.104.126.21

성투은자님..

응용해서 사용하시기도 하시니 답변 드리는 재미가 있습니다. ^^

 

일단..

기준을 설정하면 나머지 영역에서 목록이 반복해서 나타내는 방법은..

MOD함수를 활용하시면 됩니다.

일자가 1부터 증가하니까요.. 그것을 이용해서..

일자가 1,2,3,4,5,6,7,8.... 로 증가할때..

숫자가 1,2,3,4,1,2,3,4,1,2,3,4... 반복되게 만들면 되는데요..

 

1씩 증가하는 숫자가 A1셀부터 시작한다고 할때..

아래 수식을 이용하면.. 1,2,3,0,1,2,3,0으로 반복이 됩니다.

=MOD(A1,4)

저걸 1,2,3,4로 반복되게 하려면.. 아래처럼 하시면 됩니다.

=MOD(A1+3,4)+1

이걸 응용해서.. 만약 1,2,3,4,5,6으로 반복되고 하려면.. 아래처럼 하시면 되겠죠..

=MOD(A1+5,6)+1

 

일단 숫자는 반복되게 했으니까요..

숫자에 따라 특정 문자열이 나오게 하면 됩니다. 이럴때는 CHOOSE()함수를 사용합니다.

=CHOOSE(MOD(A6+3,4)+1,"주1","주2","야","비")

 

시작되는 위치에 따라 시작점을 변경해줘야겠죠?

T1셀에 시작 문자열(S1셀)을 숫자로 변환하는 수식을 넣어봤습니다.

=VLOOKUP($S$1,{"주1",1;"주2",2;"야",3;"비",4},2,0)

 

이걸 다 하나로 합치면 아래와 같습니다.

=IF(A6="","",CHOOSE(MOD(A6+2+$T$1,4)+1,"주1","주2","야","비"))

 

 

 

목록을 순환해서 만드는 것은 끝났네요..

이번엔 반장의 출근 여부를 결정해보겠습니다.

 

위에 설명해주신 것을 프로그램 로직처럼 정리하면 아래와 같겠네요..

1. 야근이면 무조건 출근

2. 비번이거나 휴일이면 무조건 출근(야근이 아닐 경우)

3. 나머지는 휴일이면 쉬고, 휴일이 아니면 출근

 

위 로직을 IF함수로 구현하면 아래와 같습니다.

=IF(T6="야",1,IF(OR(T6="비",OR(WEEKDAY(요일,2)>5,IF(ISERROR(VLOOKUP(DATE(YEAR(TODAY()),당월,$A6),holidays,1,0)),FALSE,TRUE))),0,1))

 

자세한건 첨부파일을 참고하세요..

다운받기 : 20130204-qna-08-sinnary7-1.xlsm

 

 

도움이 되셨기를.. ^^

첨부

성투은자

2013.02.05 17:28:15
*.169.24.176

3가지 조건에서 두번째 2.비번이면 무조건 출근이 아니라 쉬는 것인데,  설명을 쓰시다가 약간 잘 못 쓰인 듯.

 

첨부파일 보니 제가 원하는 결과가 나오는 수식이네요.  대만족입니다.  첨부파일처럼 하면 모든것이 제가 원하던 대로 결과가 나오니깐요.  요즘 SBS 런닝맨의 김종국이 생각나네요. 오과장님은 능력자~

문서 첨부 제한 : 0Byte/ 2.00MB
파일 제한 크기 : 2.00MB (허용 확장자 : *.*)
List of Articles
번호 제목 글쓴이 날짜 조회 수sort
공지 공지 [공지] 아별닷컴의 엑셀 질문방 폐쇄합니다. 카페 질문방 이용하세요.. imagefile [레벨:30]아별 2015-04-23 52577
93 엑셀수식 특정 범위에서 값이 있는 부분의 같은 열에 있는 값을 반환 file [레벨:1]cyee7 2014-03-25 2858
92 엑셀수식 누적 초기값 알아내기 file [2] [레벨:4]부루끄 2012-05-29 2883
91 엑셀수식 중복함수 질문합니다(sumif) [2] [레벨:5]눈물바다 2013-08-21 2886
90 VLookup 서로 다른 표기의 값 비교 [1] [레벨:1]KOohy 2013-08-16 2889
89 엑셀수식 날짜 함수 file [1] [레벨:5]눈물바다 2014-05-15 2898
88 엑셀수식 엑셀시트제목 .. 함수 관련 [1] [레벨:1]박주연 2014-10-16 2921
87 VLookup 멀고도 먼 길이여 _ OFFSET을 활용하여 조건별 현황 뽑기 file [2] [레벨:3]빛의행운아 2012-03-02 2923
86 엑셀수식 셀에 있는 주소에서 국가만 남기고 지우는 방법좀 알려주세요 imagefile [1] [레벨:1]누렁2 2011-08-11 2930
85 엑셀수식 수식좀 만들어주세요 [3] [레벨:4]요셉 2013-03-15 2979
84 엑셀수식 정렬에 관해서 여쭤봅니다. imagefile [4] [레벨:4]우보천리 2011-08-12 2980
83 VLookup vlookup 의 true 기능 관련. [5] [레벨:3]rynoel 2012-07-02 2988
82 엑셀수식 MATCH함수 수식 내에 참조수식을 넣으려면? file [5] [레벨:1]아아압액셀 2012-06-06 3018
81 엑셀수식 max & min 함수활용 file [1] [레벨:0]아민 2012-11-03 3028
80 엑셀수식 랭킹 구하는 함수 질문 file [레벨:5]눈물바다 2015-01-15 3053
79 엑셀수식 셀에 입력된 값을 이름범위로 수식내에 삽입하기? file [2] [레벨:4]성투은자 2013-04-09 3077
78 엑셀수식 sumproduct 관련 질문이 있습니다. [2] [레벨:2]광택입니다 2011-10-28 3085
77 날짜/시간 수식 날짜 함수 관련 문의합니다. file [3] [레벨:3]fmbass98 2013-02-19 3111
76 VLookup 두개이상의 범위조건을 만족하는 값을 구하려면..? file [3] [레벨:2]파란달 2013-05-02 3117
75 엑셀수식 indirect file [5] [레벨:1]엑셀짱 2011-08-11 3129
74 엑셀수식 엑셀 수식 질문.. _ OFFSET 활용하여 특정 범위값만 합계로 표시하기 file [1] [레벨:1]박주연 2012-02-29 3164