当前位置: 首页 > news >正文

VBA即用型代码手册:删除重复行Delete Duplicate Rows

我给VBA下的定义:VBA是个人小型自动化处理的有效工具。可以大大提高自己的劳动效率,而且可以提高数据的准确性。我这里专注VBA,将我多年的经验汇集在VBA系列九套教程中。

作为我的学员要利用我的积木编程思想,积木编程最重要的是积木如何搭建及拥有积木。在九套教程中我给出了大量的积木,同时讲解了如何搭建。为了让学员拥有更多的积木,我开始着手这部VBA即用型代码手册(汉英)》的创作这部手册约600页,集合约500多个的案例,案例我用汉语和英语同时发布,一方面学员从中可以更好的领会和掌握VBA中用到的一些英语知识,另一方面,大家可以看到各种各样的积木。这部手册是大家学习和工作中的不可多得的实用资料。今日的内容是: VBA即用型代码手册:删除重复行Delete Duplicate Rows0bae7256bafb90db701531163a5a3bbc.jpeg

分享成果,随喜正能量】活得通透的人 ,没有特别想维持的关系 ,也没有特别想要的东西 ,走近的人不抗拒 ,离开的人不强留 ,就连吃亏也懒得计较。。

第四章 工作表代码

Worksheet Codes

18 删除重复行Delete Duplicate Rows

此宏将删除在列表或工作表中出现两次的行。如果两个单元格相同,则此宏将删除第一个匹配项下具有相同单元格的每一行。第一个实例仍将保留,但原始单元格下方的行中的所有相同单元格都将被删除。为了运行宏,您需要选择要在其中搜索重复项的整个列,然后运行该宏。

This macro will delete rows that appear twice in a list or worksheet. If two cells are identical, this macro will delete every row with an identical cell which is underneath the first occurrence. The first instance will still remain, but all identical cells in the rows underneath the original cell will be deleted. In order to run the macro, you need to select the entire column where you want to search for duplicates and then run the macro.

Sub mynzDeleteDuplicateRows()

'此宏将删除位于第一次出现的行下的所有重复行。

'使用宏时,请选择一列以检查重复项,然后运行宏,所有重复项都将被删除,只保留第一个重复项。

Dim R As Long

Dim N As Long

Dim V As Variant

Dim Rng As Range

On Error GoTo EndMacro

Application.ScreenUpdating = False

Application.Calculation = xlCalculationManual

'确定列

Set Rng = Application.Intersect(ActiveSheet.UsedRange, _

ActiveSheet.Columns(ActiveCell.Column))

Application.StatusBar = "正在处理行: " & Format(Rng.Row, "#,##0")

N = 0

For R = Rng.Rows.Count To 2 Step -1

If R Mod 500 = 0 Then

Application.StatusBar = "正在处理行: " & Format(R, "#,##0")

End If

V = Rng.Cells(R, 1).Value

If V = vbNullString Then

If Application.WorksheetFunction.CountIf(Rng.Columns(1), vbNullString) > 1 Then

Rng.Rows(R).EntireRow.Delete

N = N + 1

End If

Else

If Application.WorksheetFunction.CountIf(Rng.Columns(1), V) > 1 Then

Rng.Rows(R).EntireRow.Delete

N = N + 1

End If

End If

Next R

EndMacro:

Application.StatusBar = False

Application.ScreenUpdating = True

Application.Calculation = xlCalculationAutomatic

MsgBox "Duplicate Rows Deleted: " & CStr(N)

End Sub

ca6bdb4d7ff8e8301f68a0b02d0fcaf7.jpeg

  • 本节内容参考程序文件:Chapter04-2.xlsm

e638addc858f8be360294d75dbde79f2.jpeg

我20多年的VBA实践经验,全部浓缩在下面的各个教程中:

e492e53a281aa584551d791e360d119b.jpeg


相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • 七天进阶elasticsearch[two]
  • 暴雨推出X705显示器:23.8英寸100Hz IPS屏
  • 重写setter方法要小心递归调用
  • [word] word悬挂缩进怎么设置? #经验分享#职场发展#经验分享
  • 25.逢七必过
  • Docker 学习总结(83)—— 配置文件daemon.json介绍及优化建议
  • python学习 - 在线 百度语音API 播报 测试案例分析
  • 二叉树最大宽度
  • 论文略读:Onthe Expressivity Role of LayerNorm in Transformers’ Attention
  • Spark MLlib机器学习
  • 安全高效海外仓系统:中小海外仓标准化管理的第一步
  • 开机自启动脚本配置
  • Java 期末复习 习题集
  • VS2022+Qt雕刻机单片机马达串口上位机控制系统
  • C++三大特性之继承,详细介绍
  • [译] 怎样写一个基础的编译器
  • 《Javascript高级程序设计 (第三版)》第五章 引用类型
  • Android 架构优化~MVP 架构改造
  • android百种动画侧滑库、步骤视图、TextView效果、社交、搜房、K线图等源码
  • CentOS 7 防火墙操作
  • dva中组件的懒加载
  • gulp 教程
  • JavaScript DOM 10 - 滚动
  • JavaScript函数式编程(一)
  • Linux中的硬链接与软链接
  • October CMS - 快速入门 9 Images And Galleries
  • 百度贴吧爬虫node+vue baidu_tieba_crawler
  • 多线程事务回滚
  • 工作手记之html2canvas使用概述
  • 通过npm或yarn自动生成vue组件
  • 我从编程教室毕业
  • 我的面试准备过程--容器(更新中)
  • 我的业余项目总结
  • 从如何停掉 Promise 链说起
  • 数据可视化之下发图实践
  • ​软考-高级-系统架构设计师教程(清华第2版)【第12章 信息系统架构设计理论与实践(P420~465)-思维导图】​
  • # 利刃出鞘_Tomcat 核心原理解析(二)
  • #中的引用型是什么意识_Java中四种引用有什么区别以及应用场景
  • $.ajax()方法详解
  • (1)Jupyter Notebook 下载及安装
  • (2021|NIPS,扩散,无条件分数估计,条件分数估计)无分类器引导扩散
  • (Arcgis)Python编程批量将HDF5文件转换为TIFF格式并应用地理转换和投影信息
  • (备份) esp32 GPIO
  • (带教程)商业版SEO关键词按天计费系统:关键词排名优化、代理服务、手机自适应及搭建教程
  • (二)学习JVM —— 垃圾回收机制
  • (附源码)springboot 校园学生兼职系统 毕业设计 742122
  • (附源码)springboot高校宿舍交电费系统 毕业设计031552
  • (七)Flink Watermark
  • (轉貼) VS2005 快捷键 (初級) (.NET) (Visual Studio)
  • .NET Core WebAPI中封装Swagger配置
  • .NET Framework 服务实现监控可观测性最佳实践
  • .net 后台导出excel ,word
  • .net 流——流的类型体系简单介绍
  • .NET 中创建支持集合初始化器的类型
  • .netcore 6.0/7.0项目迁移至.netcore 8.0 注意事项