David에는 연도별로 필터링 된 피벗 테이블이 많이 있습니다. 그의 데이터에는 연도에 대한 별도의 필드가 있습니다 (Year 함수를 통해 파생 된 2016, 2017, 2018 등의 값). 그는 대부분의 경우 노년을 제외하고 더 최근에보고합니다. 새해가되면 David가 모든 피벗 테이블을 편집하고 가장 최근 연도를 선택하는 것은 지루한 프로세스입니다. 그는 지루한 편집을 거치지 않아도되도록 피벗 테이블 필터에 대한 선택 값을 지정하는 방법이 있는지 궁금합니다.

이 작업을 수행하는 가장 쉬운 방법은 피벗 테이블의 원본 데이터에 단일 열을 추가하는 것입니다. 열에는 행이 피벗 테이블에 포함하기 위해 원하는 범위 내에 있는지 여부를 지정하는 간단한 수식이 포함될 수 있습니다. 예를 들어, 열 A에 행의 거래 날짜가 포함 된 경우 추가 된 열에 다음을 포함 할 수 있습니다.

=YEAR(A2)>YEAR(NOW())-3

공식의 결과는 거래가 지난 3 년 이내인지 여부에 따라 True 또는 False입니다. 따라서이 공식이 2018 년에 평가되면 2016, 2017 및 2018 내의 모든 트랜잭션은 True를 반환합니다. 다른 모든 것은 False입니다. 그런 다음 피벗 테이블 정의 내에서이 특정 열의 내용을 기준으로 필터링하여 해당 True 행만 피벗 테이블에 포함되도록 할 수 있습니다.

매크로 기반 솔루션을 선호하는 경우 각 피벗 테이블을 검사하고 “Year”라는 PivotField를 변경 한 솔루션을 쉽게 개발할 수 있습니다.

원하는 연도와 같도록. 다음은 그러한 변경이 얼마나 쉬운 지 보여줍니다.

Sub ChangePivotYear()

Dim sht As Worksheet     Dim pvt As PivotTable     Dim iYear as Integer

iYear = 2018     ' Change to desired year     For Each sht In Worksheets         For Each pvt In sht.PivotTables             pvt.PivotFields("Year").ClearAllFilters             pvt.PivotFields("Year").CurrentPage = iYear        Next pvt     Next sht End Sub

매크로는 필드를 2018로 설정합니다. 다른 연도를 사용하려면 Year 변수에 할당 된 값을 변경하면됩니다. 또한 매크로는 전체 통합 문서의 모든 피벗 테이블에 영향을줍니다.

_ 참고 : _

이 페이지 (또는 ExcelTips 사이트의 다른 페이지)에 설명 된 매크로를 사용하는 방법을 알고 싶다면 유용한 정보가 포함 된 특별 페이지를 준비했습니다.

link : / excelribbon-ExcelTipsMacros [새 브라우저 탭에서 특별 페이지를 열려면 여기를 클릭하세요].

_ExcelTips_는 비용 효율적인 Microsoft Excel 교육을위한 소스입니다.

이 팁 (12571)은 Office 365의 Microsoft Excel 2007, 2010, 2013, 2016, 2019 및 Excel에 적용됩니다.