VBA即用型代码手册:根据预定义的文本条件删除行

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

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

分享成果,随喜正能量】每一个在你的生命里出现的人,都有原因,喜欢你的人给了你温暖和勇气,你喜欢的人让你学会了爱和自持,你不喜欢的人教会你宽容与尊重,不喜欢你的人让你自省与成长。。

第四章 工作表代码

Worksheet Codes

20 根据预定义的文本条件删除行Delete Rows Based on Predefined Textual Criteria

此宏将允许您指定某些条件,然后根据该条件删除行。您将选择要删除行的列和工作表;然后,您将选择要查找的内容以删除行,如果这些关键字存在于单元格中,将导致该行被删除。

This macro will allow you to specify certain criteria and then to delete rows based upon that criteria. You will choose the Row, Column, and Sheet where you want to delete the rows; then you will select what you want to look for to delete a row - you type in keywords, which, if present in a cell, will cause that row to be deleted.

Sub mynzDelete_Based_on_Criteria()

'此宏将根据预定义字符或一组字符的存在情况删除整行。

'如果该字符或字符集在单元格中的指定列中,则整行将被删除

Dim X As Long

Dim Z As Long

Dim LastRow As Long

Dim FoundRowToDelete As Boolean

Dim OriginalCalculationMode As Long

Dim RowsToDelete As Range

Dim SearchItems() As String

Dim DataStartRow As Long

Dim SearchColumn As String

Dim SheetName As String

' 选择要开始搜索和删除的行

' 选择要搜索和删除的列以用于删除

' 在工作簿中选择运行此宏的工作表

DataStartRow = 1

SearchColumn = "A"

SheetName = "Sheet4"

'输入要用于删除条件的字符,要区分大小写,需要用逗号分隔

SearchItems = Split("AD,AR", ",")

On Error GoTo Whoops

OriginalCalculationMode = Application.Calculation

Application.Calculation = xlCalculationManual

Application.ScreenUpdating = False

With Worksheets(SheetName)

LastRow = .Cells(.Rows.Count, SearchColumn).End(xlUp).Row

For X = LastRow To DataStartRow Step -1

FoundRowToDelete = False

For Z = 0 To UBound(SearchItems)

If InStr(.Cells(X, SearchColumn).Value, SearchItems(Z)) Then

FoundRowToDelete = True

Exit For

End If

Next

If FoundRowToDelete Then

If RowsToDelete Is Nothing Then

Set RowsToDelete = .Cells(X, SearchColumn)

Else

Set RowsToDelete = Union(RowsToDelete, .Cells(X, SearchColumn))

End If

If RowsToDelete.Areas.Count > 100 Then

RowsToDelete.EntireRow.Delete

Set RowsToDelete = Nothing

End If

End If

Next

End With

If Not RowsToDelete Is Nothing Then

RowsToDelete.EntireRow.Delete

End If

Whoops:

Application.Calculation = OriginalCalculationMode

Application.ScreenUpdating = True

End Sub

1620ce7bf01d24a17553345b71752e45.jpeg

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

fb15d41e57a4bc95083a741d1fc918f7.jpeg

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

1b240a6d38bfe899b393e1e82ea2f02a.jpeg


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/790111.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

uni-app三部曲之三: 路由拦截

1.引言 路由拦截,个人理解就是在页面跳转的时候,增加一级拦截器,实现一些自定义的功能,其中最重要的就是判断跳转的页面是否需要登录后查看,如果需要登录后查看且此时系统并未登录,就需要跳转到登录页&…

电子电气架构 --- 智能座舱万物互联

我是穿拖鞋的汉子,魔都中坚持长期主义的汽车电子工程师。 老规矩,分享一段喜欢的文字,避免自己成为高知识低文化的工程师: 屏蔽力是信息过载时代一个人的特殊竞争力,任何消耗你的人和事,多看一眼都是你的不对。非必要不费力证明自己,无利益不试图说服别人,是精神上的节…

windows防火墙端口设置

PS:本文实例为Windows Server 2019,其他Windows版本大同小异。 1、首先打开windows防火墙,点击“高级设置” 2、 高级设置界面 3、假设需要开放一个端口为3306应该怎么做 光标对准“入站规则”右键新建规则,选择“端口” 协议这…

【UE5.1 角色练习】16-枪械射击——瞄准

目录 效果 步骤 一、瞄准时拉近摄像机位置 二、瞄准偏移 三、向指定方向射击 四、连发 效果 步骤 一、瞄准时拉近摄像机位置 打开角色蓝图,在事件图表中添加如下节点,当进入射击状态时设置目标臂长度为300,从而拉近视角。 但是这样切…

Android 通知访问权限

问题背景 客户反馈手机扫描三方运动手表,下载app安装后,通知访问权限打不开。 点击提示“受限设置” “出于安全考虑,此设置目前不可用”。 问题分析 1、setting界面搜“授予通知访问权限”,此按钮灰色不可点击,点…

C++基础篇(1)

目录 前言 1.第一个C程序 2.命名空间 2.1概念理解 2.2namespace 的价值 2.3 namespace的定义 3.命名空间的使用 4.C的输入输出 结束语 前言 本节我们将正式进入C基础的学习,话不多说,直接上货!!! 1.第一个C程…

JAVA分布式事务详情分布式事务的解决方案Java中的分布式事务实现

本人详解 作者:王文峰,参加过 CSDN 2020年度博客之星,《Java王大师王天师》 公众号:JAVA开发王大师,专注于天道酬勤的 Java 开发问题中国国学、传统文化和代码爱好者的程序人生,期待你的关注和支持!本人外号:神秘小峯 山峯 转载说明:务必注明来源(注明:作者:王文峰…

关于Python中的字典你所不知道的七个技巧

01 引言 Python是我最喜欢的编程语言之一,它向来以其简单性、多功能性和可读性而闻名。 字典作为Python中最常使用的数据类型,大家几乎每个人都或多或少在项目中使用过字典,但是字典里有一些潜在的技巧可能并不是每个同学都会用到。 在本文…

院内导航:如何用科技破解就医找路难题

自2019年开始“院内导航”被纳入医院智慧服务评估体系以来,到2023年改善就医服务升级的部署,每一步都见证了我国医疗卫生体系向智能化、人性化迈进的坚实步伐。 面对庞大复杂的医院环境与日益增长的就诊需求,如何让患者在茫茫人海中迅速找到就…

31_JQuery一文读懂,JS的升级版

今日内容 零、 复习昨日 一、JQuery 零、 复习昨日 1 js数组的特点(长度,类型,方法) - js数组的长度不限 - 类型不限 - 提供很多方法2 js中和的区别 - 判断数值相等 - 判断数值和数据类型同时相等3 js表单事件的事件名(事件属性单词) - 获得焦点 onfocus - 失去焦点 onblur …

干货:XXX智慧城市大数据共享交换平台建设方案(145页word)

引言:智慧城市大数据共享交换平台建设方案旨在构建一个高效、安全、可扩展的数据共享与交换生态系统,以促进城市内不同部门、机构及企业间的数据互联互通,推动数据资源的深度整合与利用,加速智慧城市建设进程。 方案介绍&#xff…

TongRDS 2214 docker版指引(by lqw )

文章目录 前言准备工作中心节点服务节点哨兵节点 前言 部署docker版本,建议先参考TongRDS2214手动部署版指引(by lqwsy) 在本地手动部署了一套适合业务场景的rds 服务后,再通过dockerfile 打镜像。 准备工作 1.准备对应的安装包…

开始性能测试之前的准备工作!

性能测试是软件测试中不可或缺的一部分,它可以帮助我们评估软件系统的性能表现,并找出潜在的性能瓶颈。在进行性能测试之前,需要做好充分的准备工作,以确保测试的有效性和准确性。 1. 确定性能测试的目标和范围 * 明确测试目标:性…

网口变压器下方是否要挖空探讨

一. 引言 1. RJ45组成 RJ45模块用于PHY芯片之间的互连,如图1所示,RJ45有两种组合形式,一种是分立式,网络变压器和RJ45连接座是分开的,另一种是网络变压器和RJ45集成在一起。RJ45连接座又分为带屏蔽与不带屏蔽两种。 …

C++基础编程100题-021 OpenJudge-1.4-01 判断数正负

更多资源请关注纽扣编程微信公众号 http://noi.openjudge.cn/ch0104/01/ 描述 给定一个整数N&#xff0c;判断其正负。 输入 一个整数N(-109 < N < 109) 输出 如果N > 0, 输出positive; 如果N 0, 输出zero; 如果N < 0, 输出negative 样例输入 1样例输出…

MySQL空间索引

空间类型是建立在空间类型字段上的。 空间类型 MySQL的空间类型很多&#xff0c;我就不逐一介绍了。重要分四大类&#xff1a; GeometryCurveSurfaceGeometryCollection 前三种&#xff0c;地理、曲线、曲面都是不可实例化的。Geometry有一个子类Point, Curve有一个直接子类L…

新手小白的pytorch学习第一弹-------张量

1 导入pytorch包 import torch2 创建张量&#xff08;tensor&#xff09; scalar标量 scalar torch.tensor(7) scalartensor(7)scalar.ndim查看scalar的维度&#xff0c;因为scalar是标量&#xff0c;所以维度为0 0scalar.shapetorch.Size([])torch.item()7vector&#xf…

coco_eval 使用

参考 coco eval 解析 COCO目标检测比赛中的模型评价指标介绍&#xff01; coco 的评估函数对应的是 pycocotools 中的 cocoeval.py 文件。 从整体上来看&#xff0c;整个 COCOeval 类的框架如图&#xff1a; 基础的用法为 # The usage for CocoEval is as follows: cocoGt…

JUC并发编程-05:线程高级部分-源码解读

线程高级部分-源码解读 多线程高并发底层锁机制与优化最佳实践深入JDK源码理解LongAdder的分段CAS优化机制 公平锁和非公平锁原理解析 多线程高并发底层锁机制与优化最佳实践 深入JDK源码理解LongAdder的分段CAS优化机制 多个线程进入&#xff0c;为了防止空转&#xff0c;所…

一文入门【NestJs】Controllers 控制器

Nest学习系列 ✈️一文带你入门【NestJS】 ✈️前言 流程图 Controllers 控制器主要负责处理传入请求&#xff0c;并向客户端返回响应&#xff0c;控制器可以通过路由机制来控制接收那些请求&#xff0c;通常一个Controllers种会有多个匹配路由&#xff0c;不同的路由可以知…