Excel VBA質問箱 IV

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

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


18728 / 76732 ←次へ | 前へ→

【63442】Re:リスト削除
質問  たつ  - 09/11/4(水) 8:39 -

引用なし
パスワード
   >▼こもと さん:
いろいろ教えてもらったんですが、もう一つ作らないといけないパターンがありまして…
これがどうもうまくいかず悩んでいます

【シート1】

      A列   B列
__________親名前____子名前_______________
  |  
1行 |   AAA   BBB
2行 |   BBB   CABBB ←削除(CAから始まる為、BBBがキーとなってます)
3行 |   BBB   CCC  ←削除
4行 |   CCC   DDD  ←削除
5行 |   BBB   EEE  ←削除
6行 |   EEE   FFF  ←削除
7行 |   FFF   GGG  ←削除
8行 |   HHH   RRR
9行 |   RRR   TTT
10行|   EEE   PPP  ←削除
11行|   WWW   YYY
12行|   YYY   ABC  
13行|   YYY   CAABC ←削除(CAから始まる為、ABCがキーとなってます)
14行|   ABC   EFG  ←削除

上記のように、[シート1]の中のB列に"CA"からはじまる名前があり、この"CA"を抜いた名前と繋がっているものを
順番に削除していきたいのですが、うまくいきません

例)CABBB ⇒ BBBがキーとなります

前に教えてもらったVBAを少し改造してみました
何でうまくいかないのか、伝授して頂けるとありがたいです


Sub test()
Dim myD As Object, i As Long, tbl
Dim MyLen As Integer
Dim MyCA As Variant
Set myD = CreateObject("Scripting.Dictionary")

'========================================================================
tbl = Worksheets(2).Range("A2").CurrentRegion.Columns("A:B").Value


For i = 1 To UBound(tbl)
 If Left(Cells(i, 2).Value, 2) = "CA" Then
   MyLen = Len(Cells(i, 2))
   MyCA = Right(Cells(i, 2).Value, MyLen - 2)
  
   For q = 1 To UBound(tbl)
    If Cells(q, 2).Value = MyCA Then
     If Not myD.exists(tbl(q, 2)) Then
      myD.Add tbl(q, 2), ""
           
     End If
     Exit For
    End If
  Next q
 End If
' myD.Add tbl(i, 1), ""

  Next i

With Worksheets(2)
 tbl = .Range("A2").CurrentRegion.Columns("A:B").Value
 For q = 1 To UBound(tbl) 
 
 If myD.exists(tbl(q, 1)) Then
 
 If Not myD.exists(tbl(q, 2)) Then

   myD.Add tbl(q, 2), ""
  End If
  End If

 
 Next q
 For q = UBound(tbl) To 1 Step -1

   If myD.exists(tbl(q, 1)) Then Range("C" & q).Value = "X"
  
 Next q
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 お礼

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