excel - Excel VBA 在列中查找字符串,然后删除工作表中的所有剩余行
问题描述
我对 Excel 的 VBA 编码非常陌生,我真的需要在另外 30 个包含每 250 个工作表的工作簿上实现这一点......
我需要一个 VBA 宏,它可以:
- 查找与整个单元格内容匹配的字符串并获取行号 (a)
- 查找工作表中包含的行数 (b)
- 然后删除从 a 到 b 的所有行
任何人都可以帮忙吗?
提前致谢 !
解决方案
出色地,
以防万一有人通过搜索和/或谷歌发现这篇文章:
我把它贴在 Reddit 上,一个好心人给了我答案:
Sub DeleteRowsAfterFinding3()
Dim i As Long
Dim rangeFound As Range
Dim ws As Worksheet
For Each ws In ActiveWorkbook.Worksheets
Set rangeFound = ws.Range("A:A").Find("SOMETHING", Lookat:=xlWhole)
If Not rangeFound Is Nothing Then
For i = rangeFound.Row + 1 To ws.UsedRange.Rows.Count
ws.Rows(rangeFound.Row + 1).Delete
Next i
End If
Next ws
End Sub
推荐阅读
- flutter - Flutter - PageView - 仅当您在特定组件而不是页面的任何位置滑动时才滚动
- git - Bitbucket 管道 - 如何计算提交次数
- sql - 根据SQL中的ID计算连续行之间的百分比?
- python-3.x - 从 ftp 服务器下载每个文件和每个子目录
- postgresql - PostgreSQL \ Vue - 无法在前端使用 Express 和 Vue 从数据库 (PostgreSQL) 获取数据
- c - 我在 linux 中使用 Valgrind 来检查 c 中的泄漏内存,但我没有发现是我的函数“join”中的泄漏
- c# - 由于初始化控制,Syncfusion Datagrid 使 Xamarin IOS 应用程序崩溃
- flutter - Image Picker 只从视频中生成图像?
- php - PHPRdfKafka而不是创建新主题如何生成现有主题
- r - 提取行并在一个条形图中绘图