1

「マスター」シートから「隔離」シートに特定の条件でデータをコピーするために、ワークブックで次のマクロを実行しています。

Dim LR As Long, LR2 As Long

Application.ScreenUpdating = False

With Sheets("Quarantined")
    LR2 = .Range("L" & Rows.Count).End(xlUp).Row
    If LR2 > 2 Then
        .Range("A3:I" & LR2).ClearContents
    End If
End With

With Sheets("Master")
    LR = .Cells(Rows.Count, 8).End(xlUp).Row
    LR2 = Sheets("Quarantined").Range("L" & Rows.Count).End(xlUp).Row
    With .Range("L2:L" & LR)
        .AutoFilter Field:=1, Criteria1:="QUARANTINED"
        .Offset(1).Resize(LR).EntireRow.Copy Sheets("Quarantined").Range("A" & LR2 + 1)
        .AutoFilter
    End With
End With

Application.ScreenUpdating = True

完全に機能しますが、マスターを更新してマクロを再度実行すると、隔離されたシートの元の情報の下に貼り付けられます。下に貼り付けるのではなく、既に存在する情報を上書きするにはどうすればよいですか?

これで期待

4

1 に答える 1

2

あなたがそれを伝えているので、元の情報の下に貼り付けています。

範囲をクリアして.Range("A3:I" & LR2).ClearContentsいますが、列 L から次の使用可能な行を取得しています。LR2 = Sheets("Quarantined").Range("L" & Rows.Count).End(xlUp).Row

コードをこれに変更します

.Range("A3:L" & LR2).ClearContents

または列 L の代わりに列 A に基づいて最後の行を取ります

于 2012-07-25T10:09:52.203 に答える