.Cells.ClearContents 'コピー先のシートをクリアに
.Cells.Interior.ColorIndex = xlNone 'コピー先のシートの塗りつぶしなしに
Worksheets("ピボット結果").Cells.Copy 'ピボットの結果シートをコピー
.Range("A1").PasteSpecial Paste:=xlValue '値のみ貼り付け
この貼り付け時にピボットも連れてきてしまいます。
手作業で値のみ貼り付けをした場合は、ピボットは除外されます。
それならばと、手作業をマクロ記録して
同じVBAを書いて実行しても、その場合はピボットを連れてきてしまいます。
原因と対策を教えてください。
xlValue → xlPasteValues
でいかがでしょうか
セルをコピーして 貼りつければ 当然 値以外の情報も持ってきてしまいます。
セルの値を 一度 変数に入れてから そのセルにセットしたらいいでしょう。
xlValue '値のみ貼り付け
これで 値のみでした。
肝心なのは
Worksheets("ピボット結果").Cells.Copy 'ピボットの結果シートをコピー
これ、全部コピーしています。
範囲を絞らないとダメです。
ああ、なるほど最初の方のコピーの範囲について、ですね!
色々勉強になります!!!
・vbaでピボットの結果を読み込んで、値を別シートに記載という方法はどうでしょうか。
自分はこの方法をしているつもりなのですが、上記のVBAではできていないということでしょうか?
xlValue → xlPasteValues
でいかがでしょうか
バッチリでした!!!!!!ありがとうございます。
バッチリでした!!!!!!ありがとうございます。
2013/02/27 16:53:00