2016-06-24 14 views
0

私がしようとしているのは、セルの列内から特定の値を見つけ、値を貼り付けた後に1つのセルと一致するかどうかを調べるプログラムです一致すると、関連するセルとそのセルの行が削除されます。何が起こっているのは、プログラムの特別な貼り付け部分が機能しているが、関連するセルが削除されていないということです。明確にするために、私は試合特定のセルを削除するExcel

Dim j As Integer 
Dim i As Integer 
i = 2 
Dim Aud_Tot As Integer 
Aud_Tot = Application.InputBox("How big is your audit", , , , , , , 1) 
Do While True 
    If Cells(i, 1).Value <> "" And Not IsError(Cells(i, 2).Value) Then 
     Range(Cells(i, 1), Cells(i, 22)).Copy 
     Range(Cells(i, 1), Cells(i, 22)).PasteSpecial xlPasteValues 
     For j = 2 To Aud_Tot 
      If Cells(j, 24).Value = Cells(i, 2).Value Then 
       Range(Cells(j, 24), (Cells(j, 42))).ClearContents 
      End If 
     Next j 
     i = i + 1 
    Else 
     Exit Do 
    End If 
Loop 
+0

*関連付けられているセルを削除することは*ではありません。 - それは起こっていないと思われますか?あなたの現在の結果と期待との関係が明確でないときにあなたを助けるのは難しいです。たとえば、行全体を削除しますか?または、jの各行について列24から列42までのセルの内容を消去したいだけですか? –

答えて

1

があるのか​​どうかに基づいて、特定の列から行全体を削除しようとしているそれはあなたの行を削除したいが、あなただけのClearContentsを使用しているようです。削除するには、その行をRange(Cells(j, 24), (Cells(j, 42))).Delete Shift:=xlShiftUpに変更することができます。xlShiftToLeftを使用することもできます。

全体の行または削除したい範囲を削除しますか?

+0

私はちょうど特定の範囲を削除したいと思う、私は一般的な削除がWhileループから抜け出すために働いていないと信じている –

+0

それから上記はうまくいくだろう、あなたはちょうどあなたが後にシフトしたいそれを削除する。 – tjb1

関連する問題