표의 일부분을 별도의 워크시트에 표시
워크북의 첫 번째 워크시트에는 여러 개의 열과 행(대략 1000개의 행과 20개의 열)이 있는 큰 표가 있습니다.
메인 테이블에 있는 열 중 하나의 기준을 바탕으로 워크북의 다른 워크시트에 이 표의 일부를 표시할 수 있는지 궁금합니다.
이를 설명하기 위해 실제 워크북의 예시를 사용하겠습니다.
워크시트 1(주 표인 일반 직원 정보라고 함)에서 열 A의 각 행에는 직원을 식별하는 고유한 번호가 있습니다(각 직원은 고유한 ID 번호가 있습니다).
B열에는 사무실 위치(시/시)가 있습니다.열 C는 사무실이 있는 상태를 유지합니다.D열에는 연간 급여액이 저장되어 있습니다.
이러한 유형의 직원 정보가 포함된 열이 여러 개 더 있으므로 더 이상 설명할 필요가 없습니다.
제 질문은 워크북에 시트 2에 라벨을 붙여도 될까요?"New York State"
그리고 시트에 시트 1과 동일한 정보(모두 동일한 열)만 표시하고 뉴욕 주에서 일하는 직원만 표시하도록 합니까?
라고 더 ."California"
캘리포니아에서 근무하는 직원들만 그 서류에 기재되어 있습니다.즉, 각 주별로 별도의 시트를 구비해야 합니다.
기본적으로 상태 열을 사용하여 메인 테이블을 필터링하여 하나의 상태만 표시하는 것과 같지만, 모든 정보를 저장하는 메인 테이블을 필터링하는 대신 결과를 별도의 시트로 생성하기를 원합니다.
새 시트마다 피벗 테이블을 사용하려고 생각했는데, 그게 올바른 방법인지 잘 모르겠어요.
가능한가요?저는 제가 그 문제를 분명히 설명했길 바랍니다.
Excel 2013 이상을 시작점으로 사용한다면 Excel 테이블 기능을 사용하는 것을 꼭 추천합니다.사용자가 시트를 보다 쉽게 읽을 수 있도록 하고 INDEX/MATCH와 같은 경우 오류가 발생하지 않도록 공식을 만드는 등 여러 가지 이유로 테이블이 흔들립니다.
표가 기본 데이터와 함께 배치되면, 하위 집합을 만들기 위해 데이터 모델링 기능을 사용하여 해당 표로 다시 연결합니다.
Excel 2013 - 버전은 2018년경 활성화되어 있습니다.오피스 365에서 변경되었습니다(아래 참조).
- 시트를 만들거나 현재 시트의 테이블을 원하는 위치로 이동합니다.
- 데이터' 탭을 클릭하고 연결 섹션에서 "연결"을 선택합니다.
- 여기서 Add 버튼에서 드롭다운을 선택하고 Add to Data Model을 선택합니다.연결 대화상자
- tables 탭을 클릭합니다.원하는 테이블을 누릅니다.
- 이제 대화상자를 닫습니다.
- 데이터 탭의 "외부 연결 가져오기"에서 "기존 연결"을 클릭합니다.
- Table 탭을 클릭합니다.
- 원하는 테이블을 선택합니다.
- Table 라디오 버튼을 선택합니다.
- 히트 리턴(또는 새 시트 또는 다른 셀(원하는 경우)
- 다른 시트에서 테이블을 푸프하면 이제 현재 워크시트에 반영됩니다.
이때 데이터 슬라이싱을 사용하여 부분 집합을 설정하고, 열을 숨기거나, 테이블의 오른쪽 또는 왼쪽 가장자리에 새 수식이 있는 새 열을 삽입하는 등의 작업을 수행할 수 있습니다.
도구 모음의 '모두 새로 고침' 버튼을 사용하여 별도로 새로 고침을 해야 합니다.
2019년 10월 현재 엑셀에서 (이 점을 지적해주신 조쉬님께 감사드립니다!)엑셀에 '파워' 도구가 일부 포함돼 있고, 기능을 파악할 수 있는 툴바 아이템을 만들었기 때문에 더욱 좋아졌습니다.구체적으로:
시트에서 데이터를 선택하고 삽입 테이블을 사용하여 소스 데이터를 사용하여 테이블을 만듭니다.
테이블 선택
데이터 탭에서 "From Table/Range(테이블/범위에서)" 도구 설명과 함께 가운데 하단의 작은 아이콘을 클릭합니다.
그러면 Power Query Editor(전력 쿼리 편집기가 열립니다.Microsoft에는 튜토리얼이 있지만 지금은 약간 달라 보입니다.
- 쿼리를 작성한 후 편집기에서 "닫고 로드"를 누릅니다.옵션이 없으면 새 시트가 만들어집니다.타원형으로 옵션을 선택하면 몇 가지 다른 옵션이 있습니다.
여기에 다양한 작업을 수행하려고 합니다. http://www.get-digital-help.com/2009/09/28/extract-all-rows-from-a-range-that-meet-criteria-in-one-column-in-excel/
모든 데이터가 Sheet1에 있고 [tbl]이라고 하는 모든 요소를 포함하는 범위(CTRL F3)를 정의한 경우, Sheet2 In Sheet2 In Sheet2 In B1 셀에 검색할 열 번호를 입력합니다(즉, 검색 기준을 입력합니다.필터링할 상태) 셀 A2에서 Z1000까지(예: Ctrl SHIFT RETURN을 사용하여 입력) 다음 배열 공식을 입력합니다.
=INDEX(tbl, SMALL(IF((INDEX(tbl, , $A$1, 1)=$B$1), ROW(tbl)-MIN(ROW(tbl))+1, ""), ROWS(A2:$A$2)), , 1)
이 작업을 수행할 때 유의해야 할 한 가지 핵심 사항은 첫 번째 행에 대한 배열을 먼저 생성하고 CTRL SHIFT RETURN을 생성한 다음 아래로 드래그하는 것입니다.순서를 잘못 지정해도 함수 끝에 있는 행 카운터가 제대로 증가하지 않습니다.이 게시물의 시작에 있는 링크의 지시사항을 따라가면 이해할 수 있습니다.
당신이 그 질문을 했을 때, 그것은 고통이었습니다.2023년 이후에 찾으시는 분들은 이제 수월합니다.필터와 람다(Excel 365 또는 2021년 버전, 이전 버전에서는 사용할 수 없음)를 사용하면 매우 쉽게 수행할 수 있습니다.이것은 시트 이름이 필터링할 정확한 값이라고 가정합니다.예를 들어, 뉴욕 주입니다.
먼저 가독성을 위해 시트 이름을 얻기 위해 Lamda 함수를 만듭니다.이것이 꼭 필요한 것은 아니지만 나중에 많은 수고를 덜 수 있을 것입니다.
엑셀을 열고 포뮬러 > Name Manager > New로 이동합니다.
"New Name"(새 이름) 대화 상자에 함수 이름(예: "GetSheetName")을 입력합니다.
[참조 대상] 필드에 다음 수식을 입력하고 [확인]을 누릅니다.
= lambda(ref, MID(CELL("파일명", ref)),FIND("]",CELL("파일명",ref)+1,255)
"ref"는 계산에 전달되는 파라미터입니다.계산에서 ref를 보면 공식에 입력하는 모든 데이터가 사용됩니다.우리의 목적을 위해, 우리는 단지 우리가 필터 기능을 입력하는 셀을 사용하는 것입니다.하지만 말 그대로 워크시트에 있는 어떤 셀 참조도 괜찮을 것입니다.
그런 다음 뉴욕 시트로 이동하여 셀 A1에 다음 필터 기능을 입력합니다.
=FILTER(일반직원정보[#모두], 일반직원정보[주/시]]=GetSheetName(A1), "일치하지 않음")
이렇게 하면 지자체 정보가 시트 이름과 일치하는 테이블의 정보로 시트가 자동으로 채워집니다.다른 배열 함수를 사용하여 더 많이 처리할 수 있습니다.하지만 여러분이 2023년에 이 일을 하려고 한다면, 그것은 DEAD 쉬운 일입니다.
언급URL : https://stackoverflow.com/questions/17034975/displaying-a-portion-of-a-table-in-a-separate-worksheet
'programing' 카테고리의 다른 글
ip-address를 대상으로 하는 Powershell 원격화 (0) | 2023.10.11 |
---|---|
ODAC 12c와 엔티티 프레임워크 6 (0) | 2023.10.11 |
python에서 파일 이름을 가져오는 방법은 숫자로 시작합니다. (0) | 2023.10.11 |
max(a,b)는 stdlib.h에 정의되어 있습니까? (0) | 2023.10.11 |
왜 wprintf는 리눅스에서 유니코드의 러시아어 텍스트를 라틴어로 번역합니까? (0) | 2023.10.06 |