ここから本文です

Sub Sample() Sheets("Sheet2").Select

mdm********さん

2016/2/516:30:47

Sub Sample()
Sheets("Sheet2").Select

Sheets("Sheet1").Columns("A:E").AdvancedFilter Action:=xlFilterCopy, CriteriaRange:=Range("A1:A2"), CopyToRange:=Columns("C:G")
End Sub

ネットに載っていた上記のVBAをアレンジして使用しましたがどうもうまく行きません。
アレンジしたい内容は以下の通りです。

アレンジの元のDATAはSheet1のA:S列に入っていて1行目には項目があります。抽出する条件はSheet2のA1:A2に入れてSheet1から抽出したDATAはC:U列に入れようと思ってますがどうもうまくいきません。上記のどこをアレンジすればよいのご教示お願いいたします。

閲覧数:
47
回答数:
3
お礼:
250枚

違反報告

ベストアンサーに選ばれた回答

ja7********さん

2016/2/518:30:10

> 抽出する条件はSheet2のA1:A2に入れて

条件が、たった2セルですか?
そのうちA1が、Sheet1の1行目の何処かの「見出し」ですよね。
AdvancedFilterを使用する必要があるのですか?
まぁ、必要なら いいけど・・・

そのコードで ちゃんと抽出されますが・・・

まぁ、あとは、データが、どのようになっているか ですね。

取り敢えず、コードは、こんな感じで如何でしょうか。

Sub Sample2()
With Sheets("Sheet2")
   Sheets("Sheet1").Range("A:E").AdvancedFilter Action:=xlFilterCopy, _
            CriteriaRange:=.Range("A1:A2"), CopyToRange:=.Range("C1")
End With
End Sub

質問した人からのコメント

2016/2/6 14:33:22

ありがとうございました、できました。お手数おかけしました。

ベストアンサー以外の回答

1〜2件/2件中

並び替え:回答日時の
新しい順
|古い順

hel********さん

2016/2/517:46:22

>Sheet1から抽出したDATAはC:U列に入れよう
列の指定がA:E→C:Gになっていますので、A:S→C:Uにする必要があります。
あらかじめ、Sheet1のAからSまでの見出しをSheet2のCからUの1行目にコピーしてから実行する必要があります。

Sub Sample()
Sheets("Sheet2").Select
Sheets("Sheet1").Columns("A:S").AdvancedFilter Action:=xlFilterCopy, CriteriaRange:=Range("A1:A2"), CopyToRange:=Columns("C:U")
End Sub

hdu********さん

2016/2/516:55:43

>どうもうまく行きません。

エラーが出るんですか?動かないんですか?思った位置に貼られないんですか?

それも調査しろってことなんですか?

返信を取り消しますが
よろしいですか?

  • 取り消す
  • キャンセル

みんなで作る知恵袋 悩みや疑問、なんでも気軽にきいちゃおう!

Q&Aをキーワードで検索:

Yahoo! JAPANは、回答に記載された内容の信ぴょう性、正確性を保証しておりません。
お客様自身の責任と判断で、ご利用ください。
本文はここまでです このページの先頭へ

「追加する」ボタンを押してください。

閉じる

※知恵コレクションに追加された質問は選択されたID/ニックネームのMy知恵袋で確認できます。

不適切な投稿でないことを報告しました。

閉じる