- ベストアンサー
エクセルで列に数値、文字が入力されてるものを抜粋
お世話になります。 エクセルのリストですが、列毎にいろいろな項目があり、その中で2列分(F列目はメーカ名、H列目には数字<0を含む>)に入力されているものだけを残すというようなマクロを作ることは可能でしょうか? どなたか分かる方が居りましたら、教えて下さい。 宜しくお願いします。
- みんなの回答 (5)
- 専門家の回答
質問者が選んだベストアンサー
>そのまま入替える場合は つまり元データを削除してしまいたいのですね。 >片方だけでも入力したものも抜粋 つまり両方とも空であるのを削除したいのですね。 sub macro2() range("F:H").autofilter field:=1, criteria1:="=" range("F:H").autofilter field:=3, criteria1:="=" activesheet.autofilter.range.offset(1).entirerow.delete shift:=xlshiftup activesheet.autofiltermode = false end sub
その他の回答 (4)
- keithin
- ベストアンサー率66% (5278/7941)
>Fだけ記載があったものだけ sub macro2b() range("F:H").autofilter field:=1, criteria1:="=" activesheet.autofilter.range.offset(1).entirerow.delete shift:=xlshiftup activesheet.autofiltermode = false end sub #こうやってダラダラといつまでも終わらないご相談があんまり多くて、とても迷惑しています。
お礼
大変申し訳ありません。 解決出来るものなんだと感心して、つい質問に質問を重ねてしまいました。 反省し、重ねての質問はしないように注意します。 有難うございました。
- keithin
- ベストアンサー率66% (5278/7941)
>列毎にいろいろな項目があり、 >その中で2列分(F列目はメーカ名、H列目には数字<0を含む>) >に入力されているものだけを残す sub macro1() range("F:H").autofilter field:=1, criteria1:="<>" range("F:H").autofilter field:=3, criteria1:="<=" & application.max(range("H:H")) range("F1").currentregion.copy worksheets("Sheet2").range("A1") activesheet.autofiltermode = false end sub みたいなことでしょうかね。結果をシート2にコピーします。 それとも sub macro2() range("F:H").autofilter field:=1, criteria1:="<>" range("F:H").autofilter field:=3, criteria1:="<=" & application.max(range("H:H")) range("F:F").copy worksheets("Sheet2").range("A1") range("H:H").copy worksheets("Sheet2").range("B1") activesheet.autofiltermode = false end sub みたいなことでしょうかね。結果をシート2にコピーします。
お礼
お世話になります。 早速回答して助かります。 希望はマクロ1でしたので、希望通りに並び替えてくれました。 有難うございました。 因みにSheet2へコピーしていますが、そのまま入替える場合はSheet2をSheet1に替えればいいでしょうか?
補足
お手数かけて申し訳ありませんが、上記の式ですと、2列共記載してあるものだけを抜粋していますが、2列の内、片方だけでも入力したものも抜粋して頂きたいのですが、その場合も教えて頂けないでしょうか? 宜しくお願いします。
- mshr1962
- ベストアンサー率39% (7417/18945)
“フィルタオプションの設定”という機能があるので、 これで該当行を別シートに抽出するマクロを記録すればいのでは? ・フィルタオプションの設定 http://allabout.co.jp/gm/gc/297791/
お礼
お世話になります。 早速の回答有難うございます。 すいませんが、ほとんど初心者なので感心するばかりです。 勉強してみます。
- shintaro-2
- ベストアンサー率36% (2266/6245)
可能なんですけど、 ここで質問するぐらいのレベルであれば、 F,H列でソートしたり、 オーフィルタで非表示にするほうが無難でしょう。
お礼
お世話になります。 回答有難うございました。 少しでも手間と間違いを減らしたいため、自動で出来ないかと思った次第です。
お礼
お世話になります。 重ねて有難うございます。 大変お手数ですが、もう一つ教えて頂けないでしょうか? この場合、Fだけ記載があったものだけを抜粋する場合はどうなるのでしょうか? 宜しくお願いします。