我写了一个宏来比较两个不同表中的两个表。当它在第二张纸中找到一条无法在第一张纸上找到的线时,它就会将其划掉。我用一个按钮链接了这个宏。我现在的问题是,当我点击按钮一次它工作。但是,如果我点击两次(例如错误),它会删除所有行。有人能帮助我吗?
lr1 = Worksheets("Analyse de risque").Range("B" & Worksheets("Analyse de risque").Rows.Count).End(xlUp).Row
lr2 = Worksheets("Plan Traitement Risque").Range("B" & Worksheets("Plan Traitement Risque").Rows.Count).End(xlUp).Row
'Worksheets("Plan Traitement Risque").Range("B6:B" & lr2).Font.Strikethrough = True
With ThisWorkbook.Sheets("Plan Traitement Risque")
For i = 6 To lr2 Step 1
foundTrue = False
For j = 6 To lr1 Step 1
If Sheets("Plan Traitement Risque").Cells(i, 2).Value = Sheets("Analyse de risque").Cells(j, 2).Value Then
foundTrue = True
Worksheets("Analyse de risque").Range("B" & j).Font.Strikethrough = False
Exit For
End If
Next j
If foundTrue = False Then
'Worksheets("Plan Traitement Risque").Range("B" & i).Font.Strikethrough = True
Cells(i, 3).Select
ActiveCell.Value = "=VLOOKUP(""" & Cells(i, 2).Value & """,'Scénarios de menace'!$B$4:$N$698,2,FALSE)"
Cells(i, 4).Select
Cells(i, 4).Value = "=VLOOKUP(""" & Cells(i, 2).Value & """,'Scénarios de menace'!$B$4:$N$698,13,FALSE)"
Cells(i, 11).Select
Cells(i, 11).Value = "=VLOOKUP(""" & Cells(i, 2).Value & """,'Scénarios de menace'!$B$4:$N$698,9,FALSE)"
Cells(i, 12).Select
Cells(i, 12).Value = "=VLOOKUP(""" & Cells(i, 2).Value & """,'Scénarios de menace'!$B$4:$N$698,10,FALSE)"
Cells(i, 14).Select
Cells(i, 14).Formula = "=VLOOKUP(""" & Cells(i, 2).Formula & """,'Scénarios de menace'!$B$4:$N$698,12,FALSE)"
.Range("B" & i).Font.Strikethrough = True
.Range("C" & i).Font.Strikethrough = True
.Range("D" & i).Font.Strikethrough = True
.Range("E" & i).Font.Strikethrough = True
.Range("F" & i).Font.Strikethrough = True
.Range("G" & i).Font.Strikethrough = True
.Range("H" & i).Font.Strikethrough = True
.Range("I" & i).Font.Strikethrough = True
.Range("J" & i).Font.Strikethrough = True
.Range("K" & i).Font.Strikethrough = True
.Range("L" & i).Font.Strikethrough = True
.Range("M" & i).Font.Strikethrough = True
.Range("N" & i).Font.Strikethrough = True
.Range("O" & i).Font.Strikethrough = True
.Range("P" & i).Font.Strikethrough = True
.Range("Q" & i).Font.Strikethrough = True
.Range("S" & i).Font.Strikethrough = True
Range("T" & i).Font.Strikethrough = True
.Range("U" & i).Font.Strikethrough = True
.Range("V" & i).Font.Strikethrough = True
.Range("W" & i).Font.Strikethrough = True
.Range("X" & i).Font.Strikethrough = True
.Range("Y" & i).Font.Strikethrough = True
End If
Next i
End With