Excel - 피벗 테이블이 날짜를 그룹화하지 않습니다.

Excel - 피벗 테이블이 날짜를 그룹화하지 않습니다.

피벗 테이블의 날짜를 월과 연도로 그룹화하려고 합니다. 내 원래 날짜 데이터는 포함된 SQL 스크립트를 통해 새로 고쳐지는 테이블의 mm/dd/yyyy 형식입니다.

어떤 이유로 이 원시 테이블에서 피벗 테이블을 만들 때 "이 선택 항목을 그룹화할 수 없습니다"라는 오류 메시지가 나타납니다. 빈 데이터가 없는지 확인했는데 열이 날짜 형식입니다. 나는 모든 것을 시도하고 테스트 열에서 날짜로 변환하려고 시도했는데 결과적으로 오류가 발생했습니다. 정말 문제가 있는 것 같습니다. 무엇인지 잘 모르겠습니다.

누군가 나를 도와줄 수 있나요?

추가 설명:

  1. 내 원시 데이터는 날짜가 있는 열이 있는 내장 SQL 스크립트를 통해 새로 고칠 수 있는 테이블입니다. A열이라고 가정해 보겠습니다.
  2. SQL에서 채워진 이 열 A에는 2016년 1월 20일 형식의 날짜가 있고 공백도 있습니다. 다른 열(B열)을 만들기 위해 수식을 통해 몇 가지 단계를 수행하고 있습니다. 특정 날짜의 일요일을 반환해야 하기 때문에(예를 들어 날짜가 2016년 9월 20일인 경우) B열은 2016년 9월 18일을 반환합니다. 기본적으로 B 열의 날짜는 A 열의 날짜와 동일하며 A 열의 공백은 B 열의 #N/A입니다.
  3. 다음과 같은 방식으로 B열의 날짜를 가져오기 위해 C열을 생성합니다. C열=IFERROR(COLUMN B,"01/01/2018"). 따라서 BI 열의 #N/A에 있는 내용은 "2018년 1월 1일"과 같도록 하십시오.
  4. 이 원시 데이터 테이블에서 피벗 테이블을 만들고 C 열을 뮤 날짜 열로 드래그합니다. 그런 다음 이 날짜를 월과 연도로 그룹화하고 싶습니다. 그러나 "이 선택 항목을 그룹화할 수 없습니다"라는 오류가 발생하거나 그룹화하는 경우 내가 찾고 있는 항목이 아닌 그룹 1이라는 다른 열이 생성됩니다. 월 또는 연도로 변환할 수 있는지 모르겠습니다. 홈 탭에 회색으로 표시된 [그룹 선택] 섹션이 있습니다. 회색으로 표시되지 않으면 월 및 연도 계층 구조를 선택할 수 있는 옵션이 제공될 수 있을 것 같습니다.

c열(내 날짜 열)을 확인했는데 공백이 없습니다. 형식이 2016년 1월 2일인데 그룹화되지 않는 이유를 모르겠습니다.

피벗 테이블 내에서 [텍스트를 열로]를 시도했는데 오류가 발생했습니다. 원시 데이터 테이블에서 [텍스트를 열로]를 시도했는데 C 열을 실제 공식으로 변환하고 있습니다. Iferror

답변1

로케일 문제가 있을 수 있습니다. 날짜가 텍스트로 저장된 경우 날짜가 2016년 1월 1일인 경우 날짜로 변환하면 문제가 없지만 로케일에서 DMY를 사용하고 텍스트 날짜가 MDY(또는 그 반대)를 사용하는 경우 모든 날짜가 제대로 변환되지 않습니다. 데이터 원본에서 일 값이 12보다 큰 셀을 테스트하고 적절한 날짜로 반환되는지 확인하세요.

확인한 후 Ctrl-T 또는 삽입 > 테이블을 사용하여 데이터 소스를 Excel 테이블 개체로 변환하세요. 그런 다음 날짜 열의 필터 드롭다운을 사용하세요. 열에 날짜만 포함된 경우 개별 항목이 표시되지 않고 연/월/일 확장 가능한 트리가 표시됩니다.

또한 공백이 있는지 다시 확인하십시오. 피벗 데이터 원본에 원본 데이터 끝에 빈 행이 포함되어 있을 수 있습니다.

편집: 날짜에 대한 텍스트-열 작업을 수행할 때 오류가 발생하면 이는 텍스트를 날짜로 해석할 수 없다는 명확한 표시입니다. 텍스트를 열로 변환 마법사에서 소스에 있는 대로 일, 월, 연도 순서를 올바르게 설정했는지 확인하세요. 스크린샷을 보면 날짜가 MDY 순서로 되어 있는 것을 볼 수 있습니다. 내 로케일은 기본적으로 DMY를 사용하므로 텍스트 대 열 마법사에게 원본 데이터가 MDY 순서로 되어 있음을 알려야 합니다.

여기에 이미지 설명을 입력하세요

Edit2: 귀하의 의견을 보면 수식을 사용하여 날짜를 구성하는 것 같습니다. 수식은 텍스트를 열로 처리할 수 없습니다(대체 왜 그렇게 하시겠습니까?).

날짜를 만드는 데 사용하는 수식이 날짜처럼 보이는 텍스트가 아닌 실제 날짜를 반환하는지 확인하세요. 질문을 편집하고 검사 공식의 세부 사항을 제공하십시오. 그리고 -- 댓글은 잠시 기다려 주세요. 이것은 수다스러운 포럼이 아닙니다.

답변2

피벗 테이블은 "2018년 1월 1일"을 날짜가 아닌 텍스트로 해석합니다.

대신에 를
IFERROR(COLUMN B,"01/01/2018")사용하십시오
IFERROR(COLUMN B,DATE(2018,1,1)).

관련 정보