- ベストアンサー
特定の文字を含む行だけを他のシートに引き出す方法
既存の表からA列に「H19」という文字を含む行だけを他のシートにそっくりそのまま引き出したいのですが、関数で実現しようと思った場合どうすればよいでしょうか? 手動でするにも数が多いのと、年度ごとのシートを作成するためH19以前H18・H17と作業を続けるのも大変なので、困っています。 お知恵があればお教えください。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
#1です。 マクロでやられるならこんな感じでしょうか。 サンプルコードを書いてみました。 Sub test() Dim ret As String, ws As Worksheet With ActiveSheet If .AutoFilterMode Then .Cells.AutoFilter '一旦AutoFilterを解除し End If ret = InputBox("抽出対象文字を入力してね。", " 。(^o^)/ ") .Columns("A:A").AutoFilter '再度A列にAutoFilter設定 .Columns("A:A").AutoFilter Field:=1, Criteria1:="=*" & ret & "*" '抽出 .Range(.Range("A1"), .Range("A1").SpecialCells(xlLastCell)).Copy 'コピー Set ws = Worksheets.Add(After:=ActiveSheet) '新ワークシート挿入 ws.Name = ret '新ワークシート名を抽出文字列に変更 ws.Range("A1").PasteSpecial '貼り付け Application.CutCopyMode = False .AutoFilterMode = False 'AutoFilterを解除し End With End Sub
その他の回答 (1)
- merlionXX
- ベストアンサー率48% (1930/4007)
メニューのデータ、フィルター、オートフィルターでその表にフィルターをかけてH19という文字を含む行だけを表示させてコピーすれば簡単だと思いますが。
お礼
なるほど、ありがとうございました。 大変わかりやすく、参考になりました。 マクロ記録して、自動化できるようにがんばってみます。
お礼
ご回答ありがとうございました。 かなりわかりやすいコードで助かりました。