라벨이 중복인 게시물 표시

무작위로 단어시험지 추출

이미지
이렇게 단어시험 문제를 낸다고 합시다.  시험범위는 B1~D1이고 총 시험문항수는 D4 우리말 뜻쓰기 유형 문항수는 C3 영어철자쓰기 유형 문항수는 C4 무작위로 저 조건에 맞게 단어를 추출하려면 어떻게 해야할까요? 대개 이런 유형의 문제들은 배열함수가 답입니다. 편의상 4번 문항의 수식을 예로 들겠습니다. B13에 들어가는 수식은 위와 같습니다. 배열수식이므로 마지막에 Ctrl-Shift-Enter입니다 수식의 각 부분의 해석은 다음과 같습니다. 수식 해석 기능 ( 함수 ) =IF($A13<=$D$4, 문항번호가 총문항수보다 적거나 같으면 이후 수식 진행 ,  아니면 공백출력 OFFSET 위치 이동 함수 (IF($A13<=$C$3,LIST!$C$1,LIST!$D$1), 미리 정해진 영어 -> 한국어 문항수보다 문항번호가 작을 때 , list 시트의  C 열 ( 영어 )  첫행 선택 .  아니면  D 열 ( 한국어 )  첫행 선택 offset 함수의 인수 .  이 위치에서 특정 거리만큼 이동함 . MOD 나머지의 크기에 따라 문항번호에 해당하는 순서의 단어의 위치를 구함 나머지 구하기 (SMALL 조건에 맞는 단어들 중 몇 번째로 작은 수에 해당하는 순위를 가진 단어를 찾음 배열함수에서 크기순으로 나열하기 위해 자주 쓰는 함수 .  배열 중 몇 번째로 작은 수를 찾는다 . (IF(IFERROR 시험범위에 해당하는 단어 배열만듬 배열이 시작됨 ((SUBSTITUTE(LIST!$A$2:$A$99,"day","")*1>=$B$1)* 단어 목록 중 시험범위에 해당하는 단어들의 번호만 배열로 출력함 . day1->1, day2-> 2.... B1 은 시험범위 시작일 배열 1 (SUBSTITUTE(LIST!$A$2:$A$99,

중복된 텍스트 제외하고 고유 텍스트 개수 세기

이미지
네이버 지식인 에서 알게 된 좋은 수식을 소개합니다. 이런 식으로 A1:D2 범위 내에 사람 이름이 중복된 것 포함해서 여러개 있습니다. 이때  중복된 이름은 제외하고 모두 몇 명의 이름이 있는지  알고 싶을 때 쓰는 수식입니다. 수식은 위와 같습니다.  일단, 이 수식의 기본적인 구조는,  각 사람의 이름이 나올 때마다 그 자리에 전체 범위에서 그 사람의 이름이 나오는 횟수를 분모로, 1을 분자로 한 값을 배정하여, 나중에 그 모든 숫자를 합하는 것입니다. 간단한 예를 들어서, 다음과 같이 이름이 6개가 배열되어 있다고 합시다. 홍길동,장길산,홍길동,홍길동,홍길동,장길산 그럼 이름 대신에 그 자리에 다음 숫자를 배당합니다. 0.25, 0.5, 0.25, 0.25, 0.25, 0.5 홍길동은 총 4번 나오니 1/4해서 0.25를 홍길동이 나오는 자리마다 배정합니다. 장길산은 총 2번 나오니 1/2해서 0.5를 장길산이 나오는 자리마다 배정합니다. 이제 모든 숫자를 더하면 0.25+ 0.5+ 0.25+ 0.25+ 0.25+ 0.5 = 2  그래서 중복된 이름을 제외하고 모두 2명의 이름이 있다는 결과가 나옵니다. 이제 수식을 살펴보겠습니다. =SUMPRODUCT((A1:D2<>"")/(1-(A1:D2<>"")+COUNTIF(A1:D2,A1:D2))) (엑셀에서 수식-수식분석-수식계산을 하시면 단계별로 수식이 어떻게 계산되는지 볼 수 있으므로 수식을 이해하는데 도움이 됩니다.  밑줄이 쳐진 부분은 이번 단계에서 계산이 될 예정이라는 것을 의미하고 이탤릭으로 표시된 부분은 바로 이전 단계에서 계산이 된 결과라는 것을 보여줍니다) 이 부분은 A1:D2 범위에서 공백이 아닌, 즉 이름이 있는 셀을 골라내는 것입니다. 그래서 이름이 들어있으면 TRUE, 공백이면 FALSE