수식을 사용한 데이타 사전 순서 정렬 사전 순서 정렬은 엑셀이 제공하는 정렬기능을 활용하시는 것이 가장 실용적입니다. (쉽고 정확합니다) 근데 어떤 이유로든 수식으로 해결하고 싶다면 아래와 같이 방법은 있습니다. B C D 2 이름 순번 정렬 3 박지성 2 0,C$3:C$8+ROW(C$3:C$8)/100000,66000),ROW()-ROW(D$3)+1)-INT(SMALL(IF(C$3:C$8>0,C$3:C$8+ROW(C$3:C$8)/100000,660.. 논리/엑셀 프로그래밍 2008.11.13
조건에 맞는 데이타를 찾고 순위 매기는 3가지 방법 B C D E F G H I 2 표1 표2 표3 3 100.1234 =100.1)*(B3 1 100.1234 =100.1)*(E3 1 100.1234 =100.1)*(H3 1 4 100.1999 =100.1)*(B4 2 100.1999 =100.1)*(E4 5 100.1999 =100.1)*(H4 4 5 100.9876 =100.1)*(B5 100.9876 =100.1)*(E5 0 100.9876 =100.1)*(H5 0 6 100.1245 =100.1)*(B6 3 100.1245 =100.1)*(E6 3 100.1245 =100.1)*(H6 2 7 100.1234 =100.1)*(B7 4 100.1234 =100.1)*(E7 1 100.1234 =100.1)*(H7 1 8 1.. 논리/엑셀 프로그래밍 2008.11.13
빵 받지 않은 학생 중 우유 3개 배분 10명 중 4~5명이 빵 선택. 나머지에게 우유 3개를 공평 배분. 우유를 받는 빈도는 되도록 동일. B C D E F G H I J K L M N O P Q R S 2 날짜 빵 우유 3 6.4 1 2 3 5 4 7 9 10 5 4 3 번호 우유 빵 합계 4 6.5 5 6 7 8 9 1 3 4 4 3 2 1 5 7 12 5 6.6 1 2 4 6 10 5 3 8 2 1 1 2 4 11 15 6 6.7 6 5 3 2 10 1 4 7 0 0 0 3 6 8 14 7 6.8 4 5 6 2 1 9 10 8 3 2 1 4 5 7 12 8 6.9 7 .. 논리/엑셀 프로그래밍 2008.11.13
구간이 많은 시간 합산 구하기 B C D E F G H I 2 출근 퇴근 작업 시작 끝 차이 효과 3 7:00 18:00 "")*(C3""),VALUE(CHOOSE(N(B3>=F$3:F$9)+N(C3>=F$3:F$9)+N(B3>=G$3:G$9)+N(C3>=G$3:G$9)*2+1,0,C3-F$3:F$9,C3-B3,H$3:H$9,G$3:G$9-B3,0))*24*I$3:I$9,0))' x:arrayrange="D3"> 9.667 7:00 9:50 2:50 1 4 7:10 18:00 "")*(C4""),VALUE(CHOOSE(N(B4>=F$3:F$9)+N(C4>=F$3:F$9)+N(B4>=G$3:G$9)+N(C4>=G$3:G$9)*2+1,0,C4-F$3:F$9,C4-B4,H$3:H$9,.. 논리/엑셀 프로그래밍 2008.11.13
숫자를 문자화 ; ###.### B C 2 1.002 001.002 3 1.003 001.003 4 001.001A 001.001A 5 010.001A 010.001A 6 0.003 000.003 C2 =IF(ISNUMBER(B2),RIGHT(INT(1000+B2),3)&"."&RIGHT(1000*(B2+1),3),B2) ; C2 잡아 아래로 복사, 모두 잡아 복사-선택하여 붙여넣기-값, B열에 붙여넣으면 작업 끝. 논리/엑셀 프로그래밍 2008.11.13
전화번호 정리 (집전화/휴대전화) B C D E F G H I J K 2 021234567 0111234567 02-123-4567 011-123-4567 10 2 021234567 0111234567 02-123-4567 011-123-4567 3 0311234567 01199187654 031-123-4567 011-9918-7654 11 3 0311234567 01199187654 031-123-4567 011-9918-7654 C2 =LEFT(LEFT(B2,FIND(" ",B2,1)-1),IF(MID(B2,2,1)="2",2,3))&"-"&MID(LEFT(B2,FIND(" ",B2,1)-1),IF(MID(B2,2,1)="2",2,3)+1,LEN(LEFT(B2,FIND(" ",B2,1)-1))-IF(MID(B2,2,1)=".. 논리/엑셀 프로그래밍 2008.11.13
2차원 데이타를 중복 없이 1차원 정렬 B C D E 2 김 박 이 3 김 강 박 4 김 박 차 5 6 김 3 7 박 3 515 8 이 1 2 9 강 1 3 10 차 1 박 11 #VALUE! B6 =B2 ; 원본 데이타 중 가장 먼저 나오는 이름 C6 =COUNTIF(B$2:D$4,B6) ; 나중에 이걸 데이타 수 만큼 아래로 복사 B7 =INDIRECT(ADDRESS(INT(MIN(IF(COUNTIF(B$6:B6,B$2:D$4)=0,ROW(B$2:D$4)*256+COLUMN(B$2:D$4),66000*256))/256),MOD(MIN(IF(COUNTIF(B$6:B6,B$2:D.. 논리/엑셀 프로그래밍 2008.11.13
연장근로 시간 (시간 단위) B C D E F G 2 기준 07:30 09:00 18:00 19:30 3 이름 출근 시간 퇴근 시간 합계 4 갑 07:15 1.50 19:45 =E4)+N(F$2 1.50 3.00 5 을 07:40 1.33 19:15 =E5)+N(F$2 1.25 2.58 6 병 09:10 0.00 17:50 =E6)+N(F$2 0.00 0.00 7 정 08:30 0.50 18:30 =E7)+N(F$2 0.50 1.00 8 무 06:00 1.50 21:00 =E8)+N(F$2 1.50 3.00 D4 =CHOOSE(N(D$2<=C4)+N(C4<C$2)*2+1,(VALUE(D$2)-VALUE(C4))*24,0,1.5) F4 =CHOOS.. 논리/엑셀 프로그래밍 2008.11.13
지각표 5분까지 1,000원, 상한 있음 B C D E F 2 이름 정각 출근 지각 금액 3 갑 09:00 09:00 0 0)*1000,(E3-4)*1000,30000)"> - 4 을 09:00 09:04 4 0)*1000,(E4-4)*1000,30000)"> 1,000 5 병 15:00 15:05 5 0)*1000,(E5-4)*1000,30000)"> 1,000 6 정 15:00 15:06 6 0)*1000,(E6-4)*1000,30000)"> 2,000 7 무 23:00 23:34 34 0)*1000,(E7-4)*1000,30000)"> 30,000 8 기 23:00 23:35 35 0)*1000,(E8-4)*1000,30000)"> 30,000 9 경 23:00 23:36 36.. 논리/엑셀 프로그래밍 2008.11.13
문자별 일련번호 부여 B C D E F 2 a 1 a 1 3 c 3 c 2 4 f 5 f 3 5 a 1 a 1 6 b 2 b 4 7 d 4 d 5 8 b 2 b 4 (사전순으로 일련번호를 매기고자 할 경우 : 표 B2:C8) C2 =SUMPRODUCT(N(B$2:B$8<=B2),N(1/COUNTIF(B$2:B$8,B$2:B$8))) ; C3 잡아 아래로 데이타 수 만큼 복사하면 작업 끝. 이 수식은 해당 행의 문자열 보다 작은 문자열이 있는 행의 수의 역수를 더함으로써, .. 논리/엑셀 프로그래밍 2008.11.13