Excel VBA質問箱 IV

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

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


31316 / 76732 ←次へ | 前へ→

【50668】Re:データの検索参照方法
質問  ロン  - 07/8/8(水) 15:58 -

引用なし
パスワード
   お世話になります。
先日はありがとうございました。
追加でBook2のテーブルに該当しない場合は
Book4にコピーする必要がでてきました。
見よう見まねで以下のようにWS4関連のマクロを追加しました。
こんな感じでよろしいのでしょうか?
幸いにも走行は可能でしたが
Do〜Loopの間の意味が理解できていないため
バグが出たときに不安です・・・。

Sub test()

  Dim WS1 As Worksheet
  Dim WS2 As Worksheet
  Dim WS3 As Worksheet
  Dim WS4 As Worksheet
  Dim r As Range, rr As Range
  Dim s As Range, ss As Range
  Dim i As Long

Set WS1 = Workbooks("Book1.xls").Worksheets("Sheet1")
Set WS2 = Workbooks("Book2.xls").Worksheets("Sheet1")
Set WS3 = Workbooks("Book3.xls").Worksheets("Sheet1")
Set WS4 = Workbooks("Book4.xls").Worksheets("Sheet1")
Set rr = WS3.Range("A1")
Set ss = WS4.Range("A1")
 
i = 1
With WS1
   Do
    Set r = WS2.Columns("B").Find(What:=.Range("A" & i).Value, _
        LookIn:=xlValues, LookAt:=xlWhole)
      If Not r Is Nothing Then
       rr.Resize(, 6).Value = .Range("A" & i).Resize(, 6).Value
       Set rr = rr.Offset(1)
      Else
       ss.Resize(, 6).Value = .Range("A" & i).Resize(, 6).Value
       Set ss = ss.Offset(1)
      End If
    Set r = Nothing
   i = i + 1
   Loop Until i > .Range("A" & Rows.Count).End(xlUp).Row
End With
End Sub

1 hits

【50525】データの検索参照方法 ロン 07/7/31(火) 2:52 質問
【50564】Re:データの検索参照方法 じゅんじゅん 07/8/1(水) 5:51 発言
【50565】Re:データの検索参照方法 ロン 07/8/1(水) 11:38 質問
【50566】Re:データの検索参照方法 じゅんじゅん 07/8/1(水) 14:30 回答
【50569】Re:データの検索参照方法 ロン 07/8/1(水) 19:11 お礼
【50668】Re:データの検索参照方法 ロン 07/8/8(水) 15:58 質問
【50669】Re:データの検索参照方法 じゅんじゅん 07/8/8(水) 16:07 回答
【50690】Re:データの検索参照方法 ロン 07/8/9(木) 22:49 お礼

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