[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『フィルタオプションで抽出したデータの下に別条件の抽出データを表示』(みる)
Sheet1に元データがあり、抽出先のSheet2の3行目に抽出する特定の項目(列見出し)を
あらかじめ入力してあります。抽出条件はSheet2に 日付→(>=2014/4/1 <2014/7/31)
が入力してあり、マクロで抽出するようにしてあります。更にそのデータの下に
抽出条件以外の日付、つまり <=2014/4/1 >2014/7/31 のデータを表示する事は可能でしょうか?
sheet1
A B C D E
1 区分 番号 氏名 性別 日付
2 あ 12 田中 男 2014/4/2
3 い 19 山田 男
4 え 11 佐藤 女 2014/7/19
5 う 22 斉藤 男 2014/2/11
Sheet2
A B C D E F G
1 日付 日付
2 >=2014/4/1 <2014/7/31 ←抽出条件
3 区分 番号 氏名 日付
4 あ 12 田中 2014/4/2
5 え 11 佐藤 2014/7/19
この後6行目に抽出条件以外(空欄含む)のデータを抽出したい
↓
6 い 19 山田
7 う 22 斉藤 2014/2/11
Sub Macro1()
Dim myRow1 As Long, myRow2 As Long myRow1 = Sheets("Sheet1").Range("A" & Rows.Count).End(xlUp).Row myRow2 = Sheets("Sheet2").Range("A" & Rows.Count).End(xlUp).Row If myRow2>=4 Then Sheets("Sheet2").Range("A4:D" & myRow2).ClearContents End If Sheets("Sheet1").Range("A1:E1" & myRow1).AdvancedFilter Action:=xlFilterCopy,_ CriteriaRange:=Sheets("Sheet2").Range("F1:G2"),CopyToRange:=Sheets("Sheet2").Range("A3:D3"), Unique:= False End Sub
上記のマクロに追加して抽出条件以外のデータをその下に抽出したいのです。
つたない説明で申し訳ないのですが、よろしくお願いします。
< 使用 Excel:Excel2010、使用 OS:WindowsVista >
結局全部抽出するのなら、 一旦全部コピーして、F列にでも =COUNTIFS(E4,$F$2,E4,$G$2) の様な数式を入れて、F列を降順で並べ替え後 F列の数式を削除 と言った仕組みにしてはどうですか? (HANA) 2014/09/29(月) 08:52
以上の事で抽出先に作成した表にデータを簡単に移したかったのですが・・。
マクロで方法はありますでしょうか?
(みる) 2014/09/29(月) 10:10
マクロでやるのであれば、処理中に作業列を使っても消せば同じことだと思いますけれど。
Sheet1 全体をコピーして、Sheet2 の3行目以降にコピー F列に作業列を追加
F4=ROW(A4)+IF(COUNTIFS(E4,$F$2,E4,$G$2)>0,0,10^7) をF5以下にコピー
F列を選んでコピー、形式を選んで貼り付けで「値」にし、 3行目以降のデータ対象範囲を選んで並び替えでF列を選択「先行をデータの見出し・・・」にチェック F列を削除
をマクロの記録にすれば、基本的にそのまま使えると思いますが、どうでしょうか。
コピー範囲やソート範囲の最終行だけ、Cells(Rows.Count,"E").End(xlup).Row などに置き換えてあげれば、汎用的になると思います。 (Mook) 2014/09/29(月) 11:43
>作業列を作りたくないという事と 作業列は残らなければいいんでしょ? >>F列の数式を削除 で残らないですよね?
F列じゃなくても、どこか空いている列を使ってもらっても良いと思いますし 数式を埋め込む前に、一列挿入して その列に数式を入れて 並べ替え後 挿入した列を削除してしまえば良いと思いますが。
>実は抽出先で必要な列見出しが抽出元の全部ではなく でしたら、フィルタの詳細設定で 必要な列のデータをすべて抽出する所から始めれば良いのでは?
マクロの記録等使ってもらうと、コードも割と簡単にできるんじゃないかと思います。 記録用の詳細な手順でも書きましょうか? (HANA) 2014/09/29(月) 13:22
一旦全部貼り付けて作業列を削除する方法でやってみます。
HANAさんマクロの記録は出来ると思います。お気づかいありがとうございます。
(みる) 2014/09/29(月) 14:19
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.