Microsoft ExcelでVBAを使用してピボットテーブルから最新の日付を選択する方法
毎日更新され続ける販売データに取り組んでいる場合。ピボットテーブルを使用して、データに入力された最新の日付の完全な売上を追跡します。この記事では、ピボットテーブルを使用して、マクロを使用してデータベース内の最新の日付を選択する方法を学習します。
以下は、私たちが持っているデータのスナップショットです:
新しい日付と売上を自動的に見つけるには、ピボットを作成する必要があります。ショートカットキーALT + N + Vを使用します
以下の手順に従う必要があります:
[開発者]タブをクリックします。[コード]グループから、[VisualBasic]を選択します
-
ワークシートモジュールに次のコードを入力します
Sub LatestDatePivot() Dim pfiPivFldItem As PivotItem Dim dtmDate As Date With Worksheets(“Sheet1”).PivotTables(1) .PivotCache.Refresh .ClearAllFilters With .RowRange dtmDate = Evaluate(“Max(IF(ISNUMBER(“ & .Address(0, 0) & “),” & .Address(0, 0) & “,))”) End With For Each pfiPivFldItem In .PivotFields(“Dates”).PivotItems If pfiPivFldItem.Value = “(blank)” Then pfiPivFldItem.Visible = False Else pfiPivFldItem.Visible = (Cdate(pfiPivFldItem.Value) = CLng(dtmDate)) End If Next pfiPivFldItem End With End Sub
コードをコピーした後、ALT + F8 *を使用してマクロを実行し、マクロを選択する必要があります。
-
または、図形を挿入してマクロを割り当てることができます。最新の日付を取得します
-
コードをテストするため。既存の日付を変更した場合。それに応じて出力を取得します
このコードを動的に機能させるには、以下の手順に従うだけです。
Ctrl + F3キーを押して、[参照先]ボックスに名前マネージャーを開きます。式を
と入力します。 === * = OFFSET(Sheet1!$ A $ 1 ,,, COUNTA(Sheet1!$ A:$ A)、2)
[OK]ボタンをクリックします。これで、ピボットテーブルでこの名前付き範囲を使用する準備が整いました。ピボットテーブルをクリックします。[分析]リボンから> [データソースの変更]をクリックします
F3ショートカットを押して、既存の貼り付け名を起動します。 [LatestDate]を選択します[OK]ボタンを2回クリックします