k01ken’s b10g

He110 W0r1d!

VBA(Excel)でピボットキャッシュを生成する際のエラーについて

開発環境は、Windows 10 Pro(64bit)。

ピボットキャッシュを作成する際に「型が一致しません」というエラーが出現することがある。
作成したExcel(Excel 2019)では問題なかったが、バージョンの古いExcel(Excel 2010)で動作させると、上記のようなエラーメッセージが表示されてしまった。その場合は、以下のように、CurrentRegion.Addressと指定することで解決できた。エラーが発生した時には、CurrentRegion.Selectと書いていた。
Addressは、CurrentRegionで指定した、その範囲の絶対参照のアドレスを取得できる。

  Dim ピボットキャッシュ As PivotCache
  Set ピボットキャッシュ = ActiveWorkbook.PivotCaches.Create( _
    SourceType:=xlDatabase, _
    SourceData:=Worksheets(1).Range("A1").CurrentRegion.Address _
  )

■参考リンク
『ピボットキャッシュがエラーになる時がある。』(yuma)