最速怪談選手権

エクセルマクロのピボット内検索について質問です。

Sheet1 に以下の通りピボットテーブルを作成しております。
A列 = 項目
B列~F列 = 数値

A列が項目aaa にマッチした場合、同じ行のB列~F列をコピーしたいのですが、マクロでピボットテーブル内の文字は検索できないのでしょうか。

他の方の質問を参考に、以下のマクロを書いておりますが、何度やってもaaa の行を指定できません。

Dim myrng As Range
Set myrng = worksheets("Sheet1").Cells.Find(What:="aaa", After:=ActiveCell)
ActiveCell.Resize(1, 6).Select
Selection.Copy

アドバイスいただければ幸いです。よろしくお願いいたします。

A 回答 (1件)

worksheets("Sheet1").Cells と指定すると Sheet1のすべてのセルが検索対象になります


worksheets("Sheet1").Range("A:A") と指定して A列に限定しましょう
また 引数 Afterは検索を開始する次のセルを指定するためのパラメータですので 本当に ActiveCellでいいのかも検討しましょう

単純に
Set myrng = worksheets("Sheet1").Range("A:A").Find(What:="aaa")
if not myrng is nothing then
  myrng.Resize(1,6).Select
  Selection.Copy
end if
といった具合で試してみましょう
    • good
    • 0
この回答へのお礼

redfox63さん、

早速のお返事どうもありがとうございます!
Range を使用してA列を指定したところ、検索ができ、
意図した範囲をコピーすることが出来ました。

マクロ初心者なので、ひとつひとつ、あぁでもないこうでもないと格闘している状態です。
次はaaa を変数にしてみます!

本当にありがとうございました!

お礼日時:2008/09/14 02:09

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