VBA实现文本对比着色

我们在使用Excel处理数据的时候,经常需要对比两行或者两列数据之间的异同。虽然有EXACT之类的函数非常方便的提供了对比功能,但难免还是不够用,特别是需要实现一些个性化的比对的时候。
这时VBA就派上了用场,使用VBA代码也能很方便的实现单元格的文本比对着色。只需要在vba代码编辑器里添加如下一段代码即可:

Sub diff()
    Dim wbook As Workbook
    ChDir "D:\"
    Set wbook = Workbooks.Open(Filename:="D:\1.xlsx")		'要比对的Excel文本
    wbook.Activate
    Dim col, row As Integer
    For row = 1 To ActiveSheet.UsedRange.Rows.Count Step 1			'所有有效的行
        For col = 1 To ActiveSheet.UsedRange.Columns.Count Step 2		'所有有效的列,step 2 表示每隔一行都执行一次比对,这样可以实现多组比对
            If Cells(row, col) <> Cells(row, col + 1) Then
                Cells(row, col).Interior.Color = 5296274			'着绿色
                Cells(row, col + 1).Interior.Color = 5296274
            End If
        Next
    Next
    wbook.Save
End Sub

为了验证上述代码有效,我们在D盘根目录下建立一个1.xslx文件,在里面准备以下内容:
在这里插入图片描述
执行上述代码,效果如图所示:
在这里插入图片描述

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值