사용자 지정 함수는 M 수식 언어를 사용하고 입력 값 집합을 사용한 다음 단일 출력 값을 반환합니다. 여러 번 다시 사용하거나 동일한 변환 집합을 다른 쿼리 또는 값에 적용하려는 논리가 있는 경우 사용자 지정 함수를 만든 다음 필요할 때 함수를 호출하는 것이 좋습니다. 사용자 지정 함수를 만드는 방법에는 여러 가지가 있습니다.
- 고급 편집기 사용하여 고유한 let 문을 추가하고 처음부터 시작합니다.
- 사용자 지정 함수 호출 명령을 사용합니다.
- 함수 만들기 및 쿼리로 추가 명령을 포함하여 이 도움말 항목에서 다루지 않은 함수를 만드는 추가 방법이 있습니다. 자세한 내용은 파워 쿼리 M 함수 이해(docs.com) 및 사용자 지정 함수 사용(docs.com)을 참조하세요.
고급 편집기 사용하여 간단한 사용자 지정 함수 만들기 및 호출
다음은 오랜 프로그래밍 전통을 따르는 사용자 지정 함수의 간단한 예입니다.
빈 쿼리를 만들려면 다음을 수행합니다.
Excel다른 원본에서데이터>>가져오기빈 쿼리를 > 선택합니다.
파워 쿼리 왼쪽의 쿼리 창에서 빈 지점을 마우스 오른쪽 단추로 클릭한 다음 새 쿼리기타 원본빈 쿼리>를 > 선택합니다.
왼쪽의 쿼리 창에서 이름을 두 번 클릭한 다음 새 빈 쿼리의 이름을 "HelloWorld"로 바꿉니다.
새 쿼리를 선택한 다음 홈>고급 편집기 선택합니다.
템플릿 시작 코드를 다음 코드로 바꿉 있습니다.
let
HelloWorld = () => ("Hello World")
in
HelloWorld완료를 선택합니다.
쿼리 "HelloWorld"를 사용자 지정 함수로 변경했습니다. 함수 아이콘 왼쪽의
을 확인합니다.함수를 호출하려면 함수를 선택한 다음 데이터 미리 보기에서 호출을 선택합니다.
함수의 결과는 데이터 미리 보기에 표시되고 쿼리 창에 기본 이름인 Invoked Function이 있는 쿼리로 추가됩니다. 이름을 "HelloWorldResult"와 같이 더 의미 있는 것으로 바꿀 수 있습니다.
해당 쿼리를 선택한 다음 홈>닫기 & 로드 를 선택하여 워크시트의 결과를 확인합니다.
결과
고급 편집기 매개 변수가 있는 사용자 지정 함수를 만들고 호출합니다.
다음 예제에서는 사용자 지정 함수에 매개 변수를 전달하여 10진수를 16진수로 변환하는 방법을 보여 있습니다.
빈 쿼리를 만들려면 다음을 수행합니다.
Excel다른 원본에서데이터>>가져오기빈 쿼리를 > 선택합니다.
파워 쿼리 왼쪽의 쿼리 창에서 빈 지점을 마우스 오른쪽 단추로 클릭한 다음 새 쿼리기타 원본빈 쿼리>를 > 선택합니다.
왼쪽의 쿼리 창에서 새 빈 쿼리의 이름을 "MyHex"로 바꿉니다.
새 쿼리를 선택한 다음 홈>고급 편집기 선택합니다.
템플릿 시작 코드를 다음 코드로 바꿉 있습니다.
let
MyHex = (parameter1) => Number.ToText(parameter1,"X")
in
MyHex완료를 선택합니다.
쿼리 "MyHex"를 사용자 지정 함수로 변경했습니다. 함수 아이콘 왼쪽의
을 확인합니다.함수를 호출하려면 함수를 선택한 다음 데이터 미리 보기에서 parameter1 상자에 숫자를 입력하고 호출을 선택합니다.
함수의 결과는 데이터 미리 보기에 표시되고 쿼리 창에 기본 이름인 Invoked Function이 있는 쿼리로 추가됩니다. 이름을 "MyHexResult"와 같이 더 의미 있는 것으로 바꿀 수 있습니다.
해당 쿼리를 선택한 다음 홈>닫기 & 로드 를 선택하여 워크시트의 결과를 확인합니다.
결과
사용자 지정 함수를 호출하여 열 추가
하나 이상의 매개 변수를 사용하여 함수를 만든 경우 사용자 지정 함수로 호출하여 테이블의 각 행에 대해 새 열과 새 값을 만들 수 있습니다.
쿼리를 열려면 Power Query 편집기 이전에 로드한 쿼리를 찾고 데이터에서 셀을 선택한 다음 쿼리>편집을 선택합니다. 자세한 내용은 Excel에서 쿼리 만들기, 편집 및 로드(파워 쿼리)를 참조하세요.
참고 이 예제에서는 쿼리에 정수 데이터 형식의 열이 하나 이상 필요합니다.
섹션에 설명된 대로 "MyHex" 사용자 지정 함수를 만들고 고급 편집기 매개 변수가 있는 사용자 지정 함수를 만들고 호출합니다.
쿼리에서 열> 호출사용자 지정 함수 추가를 선택합니다. 사용자 지정 함수 호출 대화 상자가 나타납니다.
새 열 이름 상자에 "HexConvert"와 같은 새 열 이름을 입력합니다.
함수 쿼리 드롭다운에서 미리 정의된 사용자 지정 함수의 이름을 선택합니다. 이 예제에서는 "MyHex"를 선택합니다.
사용자 지정 함수가 매개 변수를 참조하므로 매개 변수가 표시됩니다.
함수에 대한 매개 변수로 정수 데이터 형식의 열을 선택합니다.
확인을 선택합니다.
결과
매개 변수로 입력한 정수 열의 16진수 값을 보여 주는 새 열이 만들어집니다.