Excel 比较两张不同表格中的两列,然后突出显示差异
我在同一个工作簿中有两张工作表。在每一张桌子里,我都有一张桌子。我想写一个宏来比较这两个表,如果第二张表中有更多的行,那么突出显示行。我写了几行,但我不知道如何继续循环Excel 比较两张不同表格中的两列,然后突出显示差异,excel,vba,Excel,Vba,我在同一个工作簿中有两张工作表。在每一张桌子里,我都有一张桌子。我想写一个宏来比较这两个表,如果第二张表中有更多的行,那么突出显示行。我写了几行,但我不知道如何继续循环 lr1 = Worksheets("Analyse de risque").Range("B" & Worksheets("Analyse de risque").Rows.Count).End(xlUp).Row lr2 = Worksheets("Plan Traitement Risque").Range("
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
With ThisWorkbook.Sheets("Plan Traitement Risque")
For i = 6 To lr1 Step 1
foundTrue = False
For j = 6 To lr2 Step 1
If Sheets("Analyse de risque").Cells(i, 2).Value = Sheets("Plan Traitement Risque").Cells(j, 2).Value Then
foundTrue = True
Exit For
End If
Next j
试试这个。它应该标记只出现在其中一张图纸中的值-现在它使用删除线来标记线。但是仅仅改变宏对单元格的作用对您来说应该很容易。开始录制并在某个文本上设置删除线,您应该很快就能拥有它
Sub highlight_differences()
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
For i = 6 To lr1 Step 1
foundTrue = False
For j = 6 To lr2 Step 1
If Sheets("Analyse de risque").Cells(i, 2).Value = Sheets("Plan Traitement Risque").Cells(j, 2).Value Then
foundTrue = True
Worksheets("Plan Traitement Risque").Range("B" & j).Font.Strikethrough = False
Exit For
End If
Next j
If foundTrue = False Then
Worksheets("Analyse de risque").Range("B" & i).Font.Strikethrough = True
End If
Next i
End Sub
谢谢你的回答。它可以工作,但如果我想删除而不是突出显示所有的线。我该怎么做呢。