Excel VBA質問箱 IV

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

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


9875 / 76734 ←次へ | 前へ→

【72416】Re:再:2つのシートのデータを照合し列が一致したら転記したい
発言  kanabun  - 12/8/8(水) 17:07 -

引用なし
パスワード
   シートを追加してそこのA列に「抽出リスト」を書いておく
というばあいは、こんな風になります

シートは
>  Set WS1 = Worksheets("Sheet1")
>  Set WS2 = Worksheets("抽出")
>  Set WS3 = Worksheets("抽出リスト")
と変数にしていますので、
シート名を環境に合わせてください。

(結合セルでは Copyで転記できないので、
 先範囲.Value = 元範囲Value
 としています)

Sub マッチング2()
  Dim WS1 As Worksheet, WS2 As Worksheet, WS3 As Worksheet
  
  Dim 検索範囲 As Range, 該当セル As Range
  Dim FirstHitRow As Long
  Dim 転記先行 As Long '最初にヒットした行番号
  Dim tbl As Variant, v As Variant
  
  Set WS1 = Worksheets("Sheet1")
  Set WS2 = Worksheets("抽出")
  Set WS3 = Worksheets("抽出リスト")
  
  With WS1 '「検索範囲」は A列
    Set 検索範囲 = .Range("A2", .Cells(.Rows.Count, 1).End(xlUp))
  End With
  
  転記先行 = 5 '「転記先行」はO列 5行目から
  With WS3
    tbl = .Range("A2", .Cells(.Rows.Count, 1).End(xlUp)).Value 'A列 抽出データ
  End With
  
  For Each v In tbl
    Set 該当セル = 検索範囲.Find(v, , xlFormulas, xlWhole)
    If Not 該当セル Is Nothing Then '該当セルが見つかった場合は
      FirstHitRow = 該当セル.Row '最初にヒットした行番号
      Do
        WS2.Cells(転記先行, 3) = 該当セル() 'C列に上書き
        CopyLine 該当セル, WS2.Cells(転記先行, 15) '21列をコピー
        
        転記先行 = 転記先行 + 2 '転記先行に2を加算する。
    
        Set 該当セル = 検索範囲.FindNext(該当セル) '次を検索
    
      Loop While 該当セル.Row <> FirstHitRow
    End If
  Next

End Sub

Private Sub CopyLine(該当セル As Range, 転記先 As Range) '◆変更
  転記先.Resize(, 21).Value = 該当セル.Offset(, 1).Resize(, 21)()
End Sub

8 hits

【72393】2つのシートのデータを照合し列が一致したら転記したい kiki 12/8/1(水) 23:50 質問
【72394】Re:2つのシートのデータを照合し列が一致... UO3 12/8/2(木) 10:12 発言
【72396】Re:2つのシートのデータを照合し列が一致... kiki 12/8/2(木) 22:12 発言
【72395】Re:2つのシートのデータを照合し列が一致... ドカ 12/8/2(木) 14:28 回答
【72397】Re:2つのシートのデータを照合し列が一致... kiki 12/8/2(木) 22:17 お礼
【72400】再:2つのシートのデータを照合し列が一致... kiki 12/8/6(月) 22:07 質問
【72401】Re:再:2つのシートのデータを照合し列が一... UO3 12/8/7(火) 6:23 発言
【72407】Re:再:2つのシートのデータを照合し列が一... kiki 12/8/7(火) 20:48 質問
【72420】Re:再:2つのシートのデータを照合し列が一... UO3 12/8/8(水) 21:02 発言
【72427】Re:再:2つのシートのデータを照合し列が一... kiki 12/8/8(水) 22:21 お礼
【72402】Re:再:2つのシートのデータを照合し列が一... UO3 12/8/7(火) 6:36 発言
【72403】Re:再:2つのシートのデータを照合し列が一... UO3 12/8/7(火) 6:39 発言
【72404】Re:再:2つのシートのデータを照合し列が一... ぶらっと 12/8/7(火) 10:09 回答
【72409】Re:再:2つのシートのデータを照合し列が一... kiki 12/8/7(火) 20:54 お礼
【72405】Re:再:2つのシートのデータを照合し列が一... kanabun 12/8/7(火) 14:25 発言
【72411】Re:再:2つのシートのデータを照合し列が一... kiki 12/8/7(火) 22:25 お礼
【72410】再:2つのシートのデータを照合し列が一致... kiki 12/8/7(火) 21:11 質問
【72412】Re:再:2つのシートのデータを照合し列が... kanabun 12/8/8(水) 12:51 発言
【72413】Re:再:2つのシートのデータを照合し列が... kanabun 12/8/8(水) 13:34 発言
【72414】Re:再:2つのシートのデータを照合し列が... kanabun 12/8/8(水) 14:34 発言
【72415】Re:再:2つのシートのデータを照合し列が... kanabun 12/8/8(水) 14:46 発言
【72416】Re:再:2つのシートのデータを照合し列が... kanabun 12/8/8(水) 17:07 発言
【72418】Re:再:2つのシートのデータを照合し列が... kanabun 12/8/8(水) 17:17 発言
【72419】Re:再:2つのシートのデータを照合し列が... kiki 12/8/8(水) 20:41 質問
【72422】Re:再:2つのシートのデータを照合し列が... kanabun 12/8/8(水) 21:10 回答
【72426】Re:再:2つのシートのデータを照合し列が... kiki 12/8/8(水) 22:13 お礼
【72430】Re:再:2つのシートのデータを照合し列が... kanabun 12/8/9(木) 14:26 発言
【72437】Re:再:2つのシートのデータを照合し列が... kiki 12/8/9(木) 23:21 お礼
【72439】Re:再:2つのシートのデータを照合し列が... kanabun 12/8/10(金) 9:18 発言
【72421】Re:再:2つのシートのデータを照合し列が... kiki 12/8/8(水) 21:06 質問
【72431】Re:再:2つのシートのデータを照合し列が... kanabun 12/8/9(木) 14:42 発言
【72438】Re:再:2つのシートのデータを照合し列が... kiki 12/8/9(木) 23:22 お礼

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