EXCEL使用宏实现筛选重复项并对该行进行填充内容的操作

EXCEL使用宏实现筛选重复项并对该行进行填充内容的操作

需求

1.一个excel中有多张不同的sheet

2.筛选出sheet1中A、B列与sheet2中A、B列中非重复行

3.在非重复行对应的D列填充内容

原始表:需要排出专家1wbb在自己没课的时候可以听其他人课的时间,在专家1中做上标记"zj1"(代表此时wbb无课,可以作为专家1去听课)

sheet1:记录一段时间内所有课程安排

sheet2:一段时间内专家1wbb的课程安排

方法

使用宏:

创建一个宏,名字随便自己起,将编写的好的宏复制进去,然后在运行

代码

vbnet 复制代码
Sub find1()
'
' find1 Macro
'
    Dim ws1 As Worksheet, ws2 As Worksheet
    Dim lastRow1 As Long, lastRow2 As Long, i As Long, j As Long
    Dim cellValue1A As String, cellValue1B As String
    Dim cellValue2A As String, cellValue2B As String
    Dim combinedValue1 As String, combinedValue2 As String
    Dim isDuplicate As Boolean
    
    ' 设置工作表
    Set ws1 = ThisWorkbook.Sheets("Sheet1")
    Set ws2 = ThisWorkbook.Sheets("Sheet2")
    
    ' 获取两个工作表的最后一行
    lastRow1 = ws1.Cells(ws1.Rows.Count, "A").End(xlUp).Row
    lastRow2 = ws2.Cells(ws2.Rows.Count, "A").End(xlUp).Row
    
    ' 遍历Sheet1的A和B列
    For i = 1 To lastRow1
        cellValue1A = ws1.Cells(i, 1).Value ' 日期
        cellValue1B = ws1.Cells(i, 2).Value ' 节次
        combinedValue1 = cellValue1A & cellValue1B ' 拼接日期和节次
        
        isDuplicate = False ' 假设当前行不是重复行
        
        ' 遍历Sheet2的A和B列
        For j = 1 To lastRow2
            cellValue2A = ws2.Cells(j, 1).Value ' 日期
            cellValue2B = ws2.Cells(j, 2).Value ' 节次
            combinedValue2 = cellValue2A & cellValue2B ' 拼接日期和节次
            
            ' 如果拼接值相同,则是非重复行
            If combinedValue1 = combinedValue2 Then
                isDuplicate = True
                Exit For
            End If
        Next j
        
        ' 如果不是重复行,则在D列对应行填写"zj1"
        If Not isDuplicate Then
            ws1.Cells(i, 4).Value = "zj1" ' D列是第4列
        End If
    Next i
    
    ' 提示完成
    MsgBox "处理完成!非重复行已在Sheet1的D列标记为'zj1'。"
End Sub

执行宏后的效果

相关推荐
葡萄城技术团队1 天前
从100秒到10秒的性能优化,你真的掌握 Excel 的使用技巧了吗?
excel
QQ3596773452 天前
ArcGIS Pro实现基于 Excel 表格批量创建标准地理数据库(GDB)——高效数据库建库解决方案
数据库·arcgis·excel
星空的资源小屋4 天前
Digital Clock 4,一款免费的个性化桌面数字时钟
stm32·单片机·嵌入式硬件·电脑·excel
dyxal4 天前
linux系统安装wps
linux·运维·wps
揭老师高效办公4 天前
在Excel和WPS表格中批量删除数据区域的批注
excel·wps表格
我是zxb4 天前
EasyExcel:快速读写Excel的工具类
数据库·oracle·excel
辣香牛肉面4 天前
[Windows] 搜索文本2.6.2(从word、wps、excel、pdf和txt文件中查找文本的工具)
word·excel·wps·搜索文本
ChinaLzw4 天前
Python 操作Office的PPT、Word、Excel,同时兼容WPS
python·wps·office
zbailing4 天前
WPS文字
wps
ljf88384 天前
Java导出复杂excel,自定义excel导出
java·开发语言·excel