ExcelVBA 遇关键字删除指定行和复制指定行
网友需求:

因网友给的需求表格的行数太多,且全英文,这里不再展示。
这个问题我讲过,我讲的是删除列,网友换成行,把完整匹配改成包含,包含用like
https://www.bilibili.com/video/BV1z64y197Ce

视频共两集:

让我想起一件事,我曾经讲过,有N个工作表,从每个工作表的A1单元格取值汇总到一个工作表中,网友学会了,然后网友问我,那我要是从A2单元格取值怎么写代码?

我再讲A2单元格怎么写,并告诉他们换单元格就换个名字就好了,然后还会有人问换成A3和A4单元格怎么写。。。。你回复了,还会有人问,如果我想第一张表是A1单元格,第二张表是B7单元格,第三张表...... 那你写个字典就好了,Key是表名,Value是取哪个单元格。
同样的问题还出在对文件的整理上,FSO对象和DIR函数很多网友只能照搬我的代码,改一点需求都不想动脑子。
原因不是谁聪明的问题,是网友没有时间看系统课程,不花时间成本,只想快速把事情给办了。这是不可能的,付出>=回报 。 回报>付出 那不现实。
回到今天这个问题上,我做了一张中文的表

关键词:18,东城,大桃
解决网友方案1:CDE列,遇到关键词就删除整行
1、我们知道是哪些列,就可以将这些列合并起来
可以用VBA代码做连接,也可以直接在表里用工作表函数做连接

2、判断【合并】列是否包含关健词,包含就删除整行
删除会改变行号,所以要倒着删。这些知识在ExcelVBA第二季里都讲过
如果你的关键词多了,比如有100多个,不适合用array手工写,我们课上讲了创建数组三种方法,可以使用13.7.3通过单元格区域直接创建数组的方法。

例如我有一张表单独存放关键词

我们刚才做的合并列想删除,只需要在End sub 之前加入一句话,将F1所在的整列删除,完整代码如下
解决网友方案2:某列,遇到关键词就输出
我与网友核对了名词:输出 的意思

准备一个表,把表头复制过来,也可以用代码复制过来

只需要知道汇总表没有使用的那一行行号就可以了。例如现在就一个表头,我们在第二行复制,如果第二行有文字,那就在第三行复制。
这次我们从Sheet1表的第2行开始向最后一行复制
结果如下:

以网友目前对知识掌握的情况,暂时先用循环的方式处理。等系统学会知识后,可以用更“高级”的方法处理该问题。

ExcelVBA合集:https://www.bilibili.com/video/BV1rt4y1a72y