Excel VBA質問箱 IV

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

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


18745 / 76732 ←次へ | 前へ→

【63425】Re:リスト削除
発言  SS  - 09/11/2(月) 20:05 -

引用なし
パスワード
   ▼たつ さん:

興味がわいたので作ってみました。
削除すべき行の3列目に"○"印を付けるようにしています。
考え方はこれであっていますか?
合っていればEr内の整列と、下の行からの削除というように
改造する方法はいかがでしょうか。

Option Explicit

Sub test()
  Dim i As Long, j As Long, k As Long
  Dim r2 As Long, r1 As Long
  
  Dim dat As Variant, Er As Variant
  
  '削除対象読み込み
  With Worksheets("Sheet2")
    r2 = .Range("A" & Rows.Count).End(xlUp).Row
    ReDim dat(1 To r2)
    For i = 1 To r2
      dat(i) = .Cells(i, 1).Value
    Next i
  End With
  With Worksheets("Sheet1")
    r1 = .Range("A" & Rows.Count).End(xlUp).Row
    ReDim Er(1 To 1)
    Do
      k = 0
      For i = 1 To r1
        If InStr(vbTab & Join(dat, vbTab) & vbTab, _
            vbTab & .Cells(i, 1).Value & vbTab) > 0 Then
          If InStr(vbTab & Join(Er, vbTab) & vbTab, _
              vbTab & i & vbTab) = 0 Then
            If Er(UBound(Er)) <> "" Then
              ReDim Preserve Er(1 To UBound(Er) + 1)
            End If
            Er(UBound(Er)) = i
          End If
          For j = 1 To UBound(dat)
            If InStr(vbTab & Join(dat, vbTab) & vbTab, _
              vbTab & .Cells(i, 2).Value & vbTab) = 0 Then
              If dat(UBound(dat)) <> "" Then
                ReDim Preserve dat(1 To UBound(dat) + 1)
              End If
              dat(UBound(dat)) = .Cells(i, 2).Value
              k = 1
            End If
          Next j
        Else
        End If
      Next i
    Loop While k = 1
    For i = 1 To UBound(Er)
      .Cells(Er(i), 3).Value = "○"
    Next i
  End With
End Sub

1 hits

【63411】リスト削除 たつ 09/11/2(月) 14:26 質問
【63413】Re:リスト削除 Yuki 09/11/2(月) 15:07 発言
【63415】Re:リスト削除 たつ 09/11/2(月) 15:21 発言
【63414】Re:リスト削除 こもと 09/11/2(月) 15:17 発言
【63417】Re:リスト削除 たつ 09/11/2(月) 15:52 質問
【63419】Re:リスト削除 こもと 09/11/2(月) 16:56 発言
【63418】Re:リスト削除 たつ 09/11/2(月) 16:54 質問
【63421】Re:リスト削除 こもと 09/11/2(月) 17:09 発言
【63431】Re:リスト削除 たつ 09/11/3(火) 14:45 お礼
【63442】Re:リスト削除 たつ 09/11/4(水) 8:39 質問
【63443】Re:リスト削除 Hirofumi 09/11/4(水) 13:26 発言
【63444】Re:リスト削除 たつ 09/11/4(水) 15:16 質問
【63445】Re:リスト削除 Hirofumi 09/11/4(水) 15:43 回答
【63447】Re:リスト削除 たつ 09/11/5(木) 11:25 お礼
【63446】Re:リスト削除 kanabun 09/11/4(水) 16:07 発言
【63425】Re:リスト削除 SS 09/11/2(月) 20:05 発言
【63432】Re:リスト削除 たつ 09/11/3(火) 14:47 お礼
【63426】Re:リスト削除 Hirofumi 09/11/2(月) 20:15 回答
【63427】Re:リスト削除 Hirofumi 09/11/3(火) 12:29 回答
【63433】Re:リスト削除 たつ 09/11/3(火) 14:49 お礼
【63428】Re:リスト削除 arajin 09/11/3(火) 14:20 回答
【63429】Re:リスト削除 arajin 09/11/3(火) 14:25 回答
【63434】Re:リスト削除 たつ 09/11/3(火) 14:51 お礼

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