如果值在其他列中匹配,则为VBA,循环列和复制单元格式

时间:2013-01-07 13:53:29

标签: vba excel-vba excel-formula xls excel

我有一张带2张的excel表

sheet 2

我想要的是循环第1页(A列)的所有行并搜索该值是否存在 第2栏(e)['item_barcode']如果发现我想将相同的突出显示复制到sheet2!

sheet 1

我不擅长vba,事实上我之前从未使用过它,但我必须为我的老板做这个,这个excel表包含超过55k的行! 有没有办法用vba完成?我将不得不这样做 将xls转换为mysql并将php处理后再转换为xls。:D!

1 个答案:

答案 0 :(得分:1)

这应该可以解决问题:

  Sub LoopAndHighlight()

  Dim cl As Range
  Dim RowNum As Integer

  On Error Resume Next

     For Each cl In Intersect(Sheets("Sheet1").Range("A:A"), Sheets("Sheet1").UsedRange)
        RowNum = 0
        RowNum = Application.WorksheetFunction.Match(cl.Value, Sheets("Sheet2").Range("E:E"), 0)

        If RowNum <> 0 Then
           cl.Interior.Color = Sheets("Sheet2").Range("E" & Application.WorksheetFunction.Match(cl.Value, Sheets("Sheet2").Range("E:E"), 0)).Interior.Color
        End If
     Next cl

  End Sub