プロが教える店舗&オフィスのセキュリティ対策術

Excel2000です。
VBAで、GETPIVOTDATA関数を使用したいのですがうまくいきません。
セルですと、例えば=GETPIVOTDATA('sheet1'!A1,"DATA1 DATA2 DATA3")をworksheetfunction.getpivotdata(sheet1.range("A1"), "DATA1 DATA2 DATA3")で表示してもうまくいきません。

代わりに、Seeht1.PivotTables(1).GetData("DATA1 DATA2 DATA3")を記入すると、例えばDATA2(フィールド2)に値がない場合エラーになります。

どなたか、VBAでgetpivotdataと同等な働きをする処理方法を教えていただけませんでしょうか。
よろしくお願いします。

A 回答 (2件)

GETPIVOTDATAはVBAからは使えないようです。


VBAで使用できるワークシート関数一覧
http://www.relief.jp/itnote/archives/001974.php

Application.Evaluateメソッドを使えば良いかもしれません。
    • good
    • 0
この回答へのお礼

回答ありがとうございます。
そうなんですかぁ。でも
Application.Evaluate("=GETPIVOTDATA(Sheet1!A1,""DATA11 DATA2"")")
と、ISERROR関数の組み合わせで結果を得られることができました。

あきらめかけていましたので本当に助かりました。

お礼日時:2008/10/20 13:10

こんなのがありましたが関係ないでしょうか。



Office 2000 Service Pack 3 で修正される Excel 2000 の問題
http://support.microsoft.com/kb/326667/ja
    • good
    • 0
この回答へのお礼

ありがとうございます。
確認しましたところ、SP3は入っていましたので、別の問題のようです。。。

お礼日時:2008/10/08 16:37

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!