Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


56354 / 76737 ←次へ | 前へ→

【25138】Re:検索→削除
発言  kobasan  - 05/5/21(土) 15:17 -

引用なし
パスワード
   ▼ponpon さん、いづみさん今日は。

抽出でやってみました。
試してみてください。
'
'プログラムの流れは、以下の通りです。
'Sheet3に抽出結果を出力し、その結果をSheet1に貼り付けしました。
'

Sub 絞込みコピー貼付()
Dim c As Range
Dim AutoFkey() As Variant
  Application.ScreenUpdating = False
  Sheets(3).Cells().ClearContents
  '-----タイトル行をコピー・貼付
  With Sheets(1)
    .Range("A5", .Cells(5, 256).End(xlToLeft)).Copy
  End With
  Sheets(3).Cells(1, 1).PasteSpecial Paste:=xlValues
  '-----抽出key格納
  With Worksheets("sheet2")
     AutoFkey = .Range("A2", .Range("A65536").End(xlUp)).Value
  End With
  '-----抽出・コピー・貼付
  For i = 1 To UBound(AutoFkey, 1)
    '-----抽出・コピー
    Sheets(1).Range("A4").AutoFilter Field:=2, Criteria1:="*" & AutoFkey(i, 1) & "*"
    Sheets(1).AutoFilter.Range.CurrentRegion.Offset(1).Copy
    '-----貼付
    Sheets(3).Cells(65536, 1).End(xlUp).Offset(1, 0).PasteSpecial Paste:=xlValues
    Sheets(1).AutoFilterMode = False  'AutoFilterの解除
  Next
  Paste結果
  Application.CutCopyMode = False   'CopyModeの解除
  Sheets(1).Select
End Sub

Sub Paste結果()
  Lrow = Sheets(1).Cells(65536, 1).End(xlUp).Row
  Sheets(1).Rows("5:" & Lrow).ClearContents  'shee1のデータ消去
  '
  Lrow = Sheets(3).Cells(65536, 1).End(xlUp).Row
  Sheets(3).Rows("2:" & Lrow).Copy
  Sheets(1).Cells(5, 1).PasteSpecial Paste:=xlValues '結果をsheet1に貼付
End Sub

0 hits

【25090】検索→削除 いづみ 05/5/19(木) 21:46 質問
【25114】Re:検索→削除 ponpon 05/5/20(金) 14:45 回答
【25136】Re:検索→削除 いづみ 05/5/21(土) 0:03 質問
【25137】Re:検索→削除 ponpon 05/5/21(土) 13:07 回答
【25138】Re:検索→削除 kobasan 05/5/21(土) 15:17 発言
【25141】Re:検索→削除 ponpon 05/5/21(土) 21:42 発言
【25145】Re:検索→削除 ちゃっぴ 05/5/22(日) 13:13 回答
【25146】Re:検索→削除 いづみ 05/5/22(日) 15:00 質問
【25151】Re:検索→削除 ちゃっぴ 05/5/22(日) 22:13 回答

56354 / 76737 ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free