반응형

Excel 228

근무표 유형 변경하기(365 버전용)

1. 문제 아래와 같이 직원별, 일자별 근무 현황이 있는데, 근무 유형별, 일자별로 누가 근무했는지와 시간외근무를 오른쪽 '시간외근무 유형'에 따라 괄호 안에 시간수를 입력해서 표시하려고 하는 것에서 앞의 문제는 간단하니 넘어가고 뒷부분의 문제만 365 버전용 함수를 이용해 풀어보겠습니다. 2. 해결 방안 1 Scan 함수와 IFs 함수 등을 이용해 줄 별로 결과를 추출하는 수식을 만들어 봤습니다. ​ O2셀 : =TEXTJOIN(",",,SCAN("",OFFSET($B$3:$B$8,,ROWS(C$3:$C3)-1),LAMBDA(a,b,IF(LEFT(b,3)="시간외",OFFSET($A$3,ROW(b)-3,0),"")&IFS(b="시간외1","(1)",b="시간외2","(2)",b="시간외3","(2)",..

Excel 2024.03.11

근무표 유형 변경하기(365 이전 버전용)

1. 문제 아래와 같이 직원별, 일자별 근무 현황이 있는데, 근무 유형별, 일자별로 누가 근무했는지와 시간외근무를 오른쪽 '시간외근무 유형'에 따라 괄호 안에 시간수를 입력해서 표시하려고 합니다. 원 데이터는 다른 시트에 있는건데 이해와 설명의 편의를 위해 한 개 시트에 모았습니다. 2. 해결 방안 365 버전용 함수를 이용하는 방법과 이전 버전용 함수를 이용하는 두 가지 방법에 대해 알아보겠습니다. 가. 365 이전 버전 (1) d1, d2, n1, n2 유형에 따라 일자별 근무자 및 괄호안에 숫자 표시 일자와 유형 2가지 조건을 만족해야 하므로 두가지 조건을 * 연산자로 연결하면 =($B$3:$H$8=K$2)*($B$2:$H$2=$J3)이 되는데, #분산!라고 표시되고, 6*7의 크기로 테두리가 쳐집..

Excel 2024.03.08

한 셀에서 일정한 간격으로 떨어진 숫자 합계 구하기

1. 문제 아래와 같이 일정한 길이의 숫자가 한 칸 공백으로 연결되어 있을 때 합계를 구하는 것을 알아보겠습니다. Mid를 이용한 365 이전 버전과 TextSplit와 ByRow를 이용한 365 버전 2가지, 총 세 가지 방법에 대해 알아보겠습니다. 2. Mid 함수 가. Mid 함수의 구문 MID(text, start_num, num_chars)로서 문장(또는 문자열이 들어 있는 셀 주소)과 시작 위치, 가져올 문자의 개수 3개로 되어 있습니다. 나. 수식 작성 위 문제를 살펴보면 숫자는 7자리이고, 공백이 1개 있으므로 8개가 1묶음입니다. 따라서, Mid함수를 이용해 Mid(A2,1,7), 그다음은 Mid(A2,9,7)... 식으로 개별적으로 숫자를 발췌한 후 더할 수도 있으나 배열 수식을 이용해..

Excel 2024.03.07

가로, 세로로 일치하는 데이터 찾기

1. 문제 왼쪽에 데이터가 있고, 오른쪽에 prc_name과 eq.no가 일치하는 날짜를 찾는 것입니다. 2. 여러 가지 해결방안 prc_name과 eq.no에 해당하는 값을 찾은 다음 offset 함수를 이용해 오른쪽으로 다섯 번째 날짜를 찾을 수도 있고, index 함수를 이용해 날짜 범위를 지정한 후 행과 열 수를 지정해서 원하는 값을 구할 수도 있습니다. 3. Offset 함수 이용 가. Offset 함수의 구문 OFFSET(reference, rows, cols, [height], [width])로 reference는 참조 셀 rows는 이동할 행 수로 +면 아래, -면 위로 이동하고, 0은 현재 위치를 가리킵니다. cols는 이동할 열 수로 +면 오른쪽, -면 왼쪽으로 이동하고, 0은 현재 위..

Excel 2024.03.06

거래처명에서 일치하는 고객명 찾기(2) - Scan 함수

나. 365 버전 (1) 사용되는 함수에 대한 설명 (가) Filter 함수 Filter함수는 필터 명령을 함수로 구현한 것입니다. 구문은 Filter( sourcearray , match [, include ] [, compare ] )인데, 첫 번째 인수는 필터 처리할 배열(범위)로서 머리글은 포함하지 않습니다., 두 번째 인수는 필터 조건으로 필드명=값 식으로 입력하는데, 참에 해당하는 조건식을 입력해도 됩니다. (나) Sort 함수 데이터 정렬명령을 함수로 구현한 것으로 구문은 =SORT(array,[sort_index],[sort_order],[by_col])으로서 첫 번째 인수는 정렬할 배열(범위)이고, 두 번째 인수는 정렬기준인 열, 세 번째 인수는 내림차순 또는 오름차순을 지정하는 것으로 ..

Excel 2024.03.05

거래처명에서 일치하는 고객명 찾기(1) - Find 함수

1. 문제 아래와 같이 당월 시트의 B열에는 거래처명이 있고, 고객 시트에 고객명이 있는데, 거래처명 중 일치하는 고객명을 추출하는데, 김영희와 영희는 모두 만족하지만 긴 고객명을 출력해야 합니다. 2. 해결 방안 여러 가지 방법이 있을 수 있습니다. Find 함수를 이용할 수도 있고, 365 버전이라면 Scan 함수를 이용할 수도 있습니다. 각각 해결 방법을 알아보겠습니다. 가. Find 함수 (1) Find 함수의 구문 FIND(find_text, within_text, [start_num])로서 find_text는 찾을 문자열, within_text는 찾는 문자가 들어 있는 문자열 또는 범위, start_num은 찾기 시작할 위치인데, 대괄호 안에 있으므로 옵션입니다. (2) 일치하는 고객명의 위치..

Excel 2024.03.04

단위 앞의 숫자 추출하기(3) - 한글

한글은 Code, UniCode 함수를 이용할 수도 있고, Mid 함수를 이용할 수도 있습니다. 5. 한글 앞의 숫자 추출하기 가. 한글에 해당하는 Code 또는 UniCode값 알아내기 코드 값을 알아내기 위해 i11셀에 =code(h11)이라고 입력하면 42145가 구해지고, 유니코드 값을 알아내기 위해 j11셀에 =unicode(h11)이라고 하면 12593이 구해집니다. 이제 i11셀과 j11셀을 선택한 후 j11셀의 채우기 핸들을 더블 클릭하면 나머지 한글의 (유니) 코드 값을 알 수 있습니다. 따라서, 이것을 이용해서 한글의 위치를 알 수 있고, 1을 빼면 숫자만 구할 수 있습니다. 나. 숫자 추출하기 (1) Code 함수 이용하기 영문자의 위치를 구해서 숫자를 추출하는 D3셀의 수식을 복사해..

Excel 2024.03.01

단위 앞의 숫자 추출하기(2) - Code 함수

4. Code 함수 이용하기 가. Code 함수의 정의 및 아스키코드 표 Code함수는 문자에 대한 Ascii 코드 값을 반환해 주는 함수입니다. 아래가 아스키코드 표인데, 숫자는 48부터 시작하고, 알파벳 A는 65, 소문자 a는 97부터 시작합니다. 나. Code 함수를 이용한 첫 번째 문자의 위치 찾기 (1) 문자가 알파벳인지 여부 판단 한 글자씩 Code 값을 찾아내는 수식은 CODE(MID(B3,COLUMN(A:K),1))>=65 입니다. 그러면 아래와 같이 False, True, True... #Value!... 등으로 표시됩니다. 2019 버전 등의 경우는 먼저 11개의 범위를 잡은 다음 수식을 입력하고, CSE 캐를 눌러야 합니다. (2) 첫 번째 알파벳 위치 파악하기 =MATCH(TRUE..

Excel 2024.02.29

단위 앞의 숫자 추출하기(1) - Find 함수

1. 문제 아래와 같이 단위 앞에 숫자가 있는데, 숫자의 길이가 무작위일 것입니다. 이와 같은 경우 문자를 기준으로 숫자만 추출하는 것을 해보고자 합니다. 2. 해결 방안 여러 가지가 있을 것입니다. 단순하게 each라면 간단하게 추출이 가능한데, pack까지 있다면 2가지를 찾아야 하고, 이런 것이 많아진다면 복잡해질 겁니다. 두번째는 단위인 each나 pack과는 무관하게 문자가 나올 때 그 위치 이전까지가 문자이므로 이를 이용하는 것입니다. 그런데 영어면 간단한데 한글이라면 어떻게 해야 할까요? 이렇게 3가지로 나눠서 해결 방안을 찾아보겠습니다. 3. 방법 1 : find 함수 이용 가. 단위의 위치 찾기 each와 pack을 찾아서 그 위치를 기준으로 숫자를 추출해 보겠습니다. =FIND("pac..

Excel 2024.02.28

월말 데이터 값만 더해서 평균을 구하는 법

1. 문제 아래와 같이 일별 데이터가 있는데, 1월은 말일까지 있지만 4월의 경우는 2023/4/30일이 일요일이라 근무일인 4/28까지의 데이터만 있는 특이점이 있습니다. 따라서, 단순히 EOMonth로 말일을 구할 수 없는 한계가 있으며, 5월은 2일까지뿐이 없어서 월말이라고 볼 수가 없습니다. 이와 같은 경우 해결책에 대해 알아보겠습니다. 2. Scan 함수의 구문 Microsoft 공식 홈페이지의 도움말을 보면 =SCAN ([initial_value], array, lambda(accumulator, value)) 라고 되어 있는데, lambda의 인수로 세 번째에 Calculation이 있어야 하는데 누락된 것 같습니다. ​ 맞는 구문은 =SCAN ([initial_value], array, l..

Excel 2024.02.26
반응형