匿名質問者

エクセルのVBAでピボット結果を値のみ別シートにコピーする方法がわかりません。


.Cells.ClearContents 'コピー先のシートをクリアに
.Cells.Interior.ColorIndex = xlNone 'コピー先のシートの塗りつぶしなしに
Worksheets("ピボット結果").Cells.Copy 'ピボットの結果シートをコピー
.Range("A1").PasteSpecial Paste:=xlValue '値のみ貼り付け

この貼り付け時にピボットも連れてきてしまいます。
手作業で値のみ貼り付けをした場合は、ピボットは除外されます。
それならばと、手作業をマクロ記録して
同じVBAを書いて実行しても、その場合はピボットを連れてきてしまいます。

原因と対策を教えてください。

回答の条件
  • 1人5回まで
  • 登録:
  • 終了:2013/02/27 16:53:04

ベストアンサー

匿名回答3号 No.3

xlValue → xlPasteValues
でいかがでしょうか

匿名質問者

バッチリでした!!!!!!ありがとうございます。

2013/02/27 16:53:00

その他の回答2件)

匿名回答1号 No.1

セルをコピーして 貼りつければ 当然 値以外の情報も持ってきてしまいます。

セルの値を 一度 変数に入れてから そのセルにセットしたらいいでしょう。

他3件のコメントを見る
匿名回答1号

xlValue '値のみ貼り付け
これで 値のみでした。

肝心なのは
Worksheets("ピボット結果").Cells.Copy 'ピボットの結果シートをコピー

これ、全部コピーしています。
範囲を絞らないとダメです。

2013/02/27 16:54:06
匿名質問者

ああ、なるほど最初の方のコピーの範囲について、ですね!
色々勉強になります!!!

2013/02/27 17:14:16
匿名回答2号 No.2

・vbaでピボットの結果を読み込んで、値を別シートに記載という方法はどうでしょうか。

匿名質問者

自分はこの方法をしているつもりなのですが、上記のVBAではできていないということでしょうか?

2013/02/27 13:58:04
匿名回答3号 No.3

ここでベストアンサー

xlValue → xlPasteValues
でいかがでしょうか

匿名質問者

バッチリでした!!!!!!ありがとうございます。

2013/02/27 16:53:00

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません