Excel VBA - 如果单元格是整数,则删除整行

2023-12-09

我一直在尝试使用一些关于如何删除 Excel VBA 上的整行的代码片段,但我无法修改它们以包含“IsNumber”验证。

我需要能够选择一个活动区域,例如:

Set r = ActiveSheet.Range("A1:C10")

当它逐行浏览时(并检查该区域的每个单元格),如果单元格上有数字,则删除整行。

例如:

NA NA NA 21
NA 22 NA 44
00 NA NA NA
NA NA NA NA
55 NA NA NA

然后,宏将删除所有行,除了第四行之外

NA NA NA NA

任君选择:)

方式 1(经过尝试和测试)

这使用SpecialCells识别有数字的行。

Sub Sample()
    Dim ws As Worksheet
    Dim rng As Range

    On Error GoTo Whoa

    Set ws = Sheets("Sheet1")

    With ws
        Set rng = .Cells.SpecialCells(xlCellTypeConstants, xlNumbers).EntireRow

        rng.ClearContents '<~~ or rng.Clear if cells have formatting

        .Cells.Sort Key1:=.Range("A1")
    End With

    Exit Sub
Whoa:
    MsgBox Err.Description
End Sub

方式 2(经过尝试和测试)

这使用循环和Count()检查号码

Sub Sample()
    Dim ws As Worksheet
    Dim delrange As Range
    Dim lRow As Long, i As Long

    On Error GoTo Whoa

    Set ws = Sheets("Sheet1")

    With ws
        lRow = .Range("A" & .Rows.Count).End(xlUp).Row

        For i = 1 To lRow
            If Application.WorksheetFunction.Count(.Rows(i)) > 0 Then
                If delrange Is Nothing Then
                    Set delrange = .Rows(i)
                Else
                    Set delrange = Union(delrange, .Rows(i))
                End If
            End If
        Next i

        If Not delrange Is Nothing Then delrange.Delete
    End With

    Exit Sub
Whoa:
    MsgBox Err.Description
End Sub

方式 3(经过尝试和测试)

这使用自动过滤器。我假设第 1 行有标题,并且您的范围内没有空白单元格。

Sub Sample()
    Dim ws As Worksheet
    Dim lRow As Long, lCol As Long, i As Long
    Dim ColN As String

    On Error GoTo Whoa

    Set ws = Sheets("Sheet1")

    With ws
        lRow = .Range("A" & .Rows.Count).End(xlUp).Row
        lCol = .Cells(1, .Columns.Count).End(xlToLeft).Column

        For i = 1 To lCol
            '~~> Remove any filters
            .AutoFilterMode = False
            ColN = Split(.Cells(, i).Address, "$")(1)

            '~~> Filter, offset(to exclude headers) and delete visible rows
            With .Range(ColN & "1:" & ColN & lRow)

                .AutoFilter Field:=1, Criteria1:=">=" & _
                Application.WorksheetFunction.Min(ws.Columns(i)), _
                Operator:=xlOr, Criteria2:="<=" & _
                Application.WorksheetFunction.Max(ws.Columns(i))

                .Offset(1, 0).SpecialCells(xlCellTypeVisible).EntireRow.Delete
            End With

            '~~> Remove any filters
            .AutoFilterMode = False
        Next
    End With

    Exit Sub
Whoa:
    MsgBox Err.Description
End Sub
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Excel VBA - 如果单元格是整数,则删除整行 的相关文章

  • 使用 Apache POI Excel 写入特定单元格位置

    如果我有一个未排序的参数 x y z 列表 是否有一种简单的方法将它们写入使用 POI 创建的 Excel 文档中的特定单元格 就好像前两个参数是 X 和Y 坐标 例如 我有如下行 10 4 100 是否可以在第 10 行第 4 列的单元格
  • 如何使用VBA根据条件删除Excel中的行?

    我目前正在构建一个宏来格式化数据表并删除不适用的数据行 具体来说 我希望删除列 L ABC 的行以及删除列 AA DEF 的行 到目前为止 我已经实现了第一个目标 但还没有实现第二个目标 现有代码是 Dim LastRow As Integ
  • 文件夹.文件的相对路径

    我有一个 Excel 文件 在同一文件夹中还有一个包含我想要包含的 CSV 文件的文件夹 使用 来自文件夹 查询 第一步将给出以下查询 Folder Files D OneDrive Documents Health Concept2 现在
  • 在 Node.js 中解析 Json(带有数组和对象)并将数据导出到 Excel 文件中

    我是 Node js 新手 我的要求是 我需要解析 JSON 并将数据导出到 Excel 文件中 其中包含 JSON 中的所有字段 我的 JSON 如下 id 1255 title The Brain and Nervous System
  • 如何将 MySQL 查询输出保存到 Excel 或 .txt 文件? [复制]

    这个问题在这里已经有答案了 如何将 MySQL 查询的输出保存到 MS Excel 工作表 即使只能将数据存储在 txt文件 就可以了 From 将 MySQL 查询结果保存到文本或 CSV 文件中 http www tech recipe
  • SpreadsheetML 文件扩展名被 IE 和 FF 更改 - 内容类型错误?

    我正在 PHP 中生成 SpreadsheetML 文件 当用户下载文件并保存时 默认情况下文件会另存为 Report xml 并在 Excel 中打开 但是 如果选择在 Excel 中打开文件而不是保存文件 则文件名将更改为 Report
  • 所以,我有 6 个“主”文件,然后分为 40 个单独的文件

    我将简要描述我想要的内容 我有 6 个 主 文件 每个文件包含 40 个工作表 如下所示 AG 工作簿有 HR Gp 1 到 HR Gp 40 ER 工作簿有 FB Gp 1 到 Gp 40 等 所有工作表都已 平坦 我已经成功创建了一个适
  • 将 Excel 范围转换为 VBA 字符串

    我想将给定范围内的值转换为 VBA 字符串 其中原始单元格值由任何选定的列分隔符和行分隔符分隔 分隔符可以是一个字符或更长的字符串 行分隔符是行末尾的字符串 该字符串应该像我们从左上角 从左到右 到右下角读取文本一样完成 以下是范围 A1
  • Java Microsoft Excel API [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • Excel VBA - 添加自定义数字格式

    我有一个在 Excel 外部生成的文件 其中包含许多百分比 所有这些百分比都有一位小数 当导入到 Excel 中时 Excel 会在百分比中添加第二位小数 这似乎是 Excel 中百分比的某种默认格式 它只是添加了一个 0 我想将所有两位小
  • 使用自定义功能区时是否可以阻止 MS Access 自动更改选定的功能区选项卡?

    当使用自定义 UI XML 文件在 Access 中添加多个自定义功能区选项卡时 每当关闭窗体时 选定的功能区选项卡都会变回第一个自定义选项卡 我们从 VBA 以编程方式加载自定义功能区 我已经创建了重现问题的 accdb http sdr
  • Redim Preserve 给出“下标超出范围”

    我想要Redim Preserve一个数组我不断收到错误 下标超出范围 我知道只有最后一个维度的大小可以更改 这正是我正在做的事情 这里出了什么问题 数组的类型是Variant BmMatrix Sheets BENCH Range a60
  • 启动时的 Excel 加载项

    我正在使用 Visual C 创建 Microsoft Excel 的加载项 当我第一次创建解决方案时 它包含一个名为 ThisAddIn Startup 的函数 我在这个函数中添加了以下代码 private void ThisAddIn
  • Excel 2013 数据透视表不会更改当前页面,除非手动导航到

    我们有一小段 VBA 代码 多年来一直完美运行 本质上是 Me PivotTables APivot PivotFields AField CurrentPage Some text 这种方法一直有效 直到 Excel 2013 该行将失败
  • 通过 Excel / VBA 调用 DLL 中的 C++ 函数在传递双参数时生成异常

    我试图通过 DLL 在 Excel VBA 中使用 C C 静态函数 我在 VS17 中调试时遇到异常 我怀疑这是参数传递方式的问题 它是双精度 EXCEL EXE 中 0x00007FFA28BBA14F kernel32 dll 处抛出
  • HTML/VBA Click 事件未触发

    这是我第一次在 StackOverflow 上发布问题 到目前为止 我已经能够通过 VBA 帮助论坛解决我的大部分问题 我的问题很简单 我有一个自动数据拉取 我需要在其中导出数据 我过去曾在这方面取得过成功 但这次略有不同 我尝试单击以生成
  • VBA / HTML / jQuery 选择自动完成 - 在列表中选择

    我正在尝试使用 Excel 中的 VBA 在网站的列表中选择一个值 这不是一个 正常列表 该网站使用 jQuery 选择自动完成 如下所示 example http davidwalsh name demo jquery chosen ph
  • 如何将参数从 Excel/VBA 传递到 Rstudio 中的脚本

    我正在尝试使用 Rstudio 从 VBA 打开 R 脚本 同时将参数传递给 R 脚本 然后我可以使用 commandArgs 访问该脚本 该问题与此处描述的问题非常相似 WScript Shell 用于运行路径中包含空格且来自 VBA 的
  • 跳过行:将数据从 SSIS 导出到 Excel 文件

    我正在尝试使用 SSIS 将数据从 SQL Server 数据库导出到 Excel 文件中 我希望从第 6 行插入数据 第 5 行有标题 我可以映射标题名称Excel 目标编辑器 通过编写 SQL 命令到 SQL 表头 SELECT FRO
  • Excel 2010 在 IF 函数中搜索文本 - 单独的单元格数据

    Program Excel 2010 Require 一种将名字 姓氏 电子邮件提取到各个单元格的方法 Data 我的数据有一个包含原始 脏数据 的表 它是原始的并且一团糟 我用一个简单的方法整理它 IF A7 Order 1 然后其余单元

随机推荐

  • Google Analytics Tracker 不适用于 Android 应用

    我已将 Google Analytics 纳入我的应用程序中 但是当我创建一个对象时Tracker追踪器不工作 我的一项活动中的代码 Override protected void onStart TODO Auto generated m
  • 如何为事件处理程序提供变量?

    当我绑定某些东西时 如何将变量赋予函数 举个简单的例子 def test self self MyTextCtrl Bind wx EVT TEXT self something AnyVariable def something self
  • 验证视图状态 MAC 失败 - “/”应用程序中的服务器错误

    当我访问我的托管 Web 应用程序时出现此错误 在 VS2008 C ASP NET 3 5 Framework 中 视图状态 MAC 验证失败 如果此应用程序由 Web Farm 或集群托管 请确保配置指定相同的validationKey
  • 覆盖 SemanticException [错误 10001]

    我想更改 hive 数据库中的 1000 个表 但其中一些表存在 有些不存在 当我执行该 sql 文件时 一旦发现表不存在 它就会从配置单元退出 所以请帮助我覆盖或跳过那些表不存在于配置单元中的查询 尝试这个配置参数 set hive cl
  • React Router V4 - 页面不会在更改的路由上重新渲染

    我正在构建一个小应用程序来学习 React 和 Meteor 要求用户输入一个位置 根据这个位置 用户被路由到一个新页面 该位置显示在页面顶部 以及基于该位置的数据库中的一些数据 还没有 这是我的 下一步 我将位置存储在组件的状态中 现在如
  • JavaScript - 如何提取 If/Else 语句中的字符串

    在搜索 imgNumber 变量后 我尝试使用 If Else 语句在屏幕上写入某些文本 由于某种原因 无论 imgNumber 变量中包含哪个文本 它都只写入字符串 cockroaches 此外 imgNumber 是一个随机字符串 它始
  • scala 中的闭包是如何实现的?

    创建函数时 如何将函数范围之外的变量拉入函数中 我尝试反编译 但我无法理解它 看起来它使用了 putfield putfield 是否创建一个指向对象引用的指针 答案是 这取决于 scala 2 11 版本可能会对此进行一些重大更改 希望
  • 显式 range-v3 decltype 计算结果为 void?

    我正在尝试获取范围的显式类型 将来我可能想将其存储为类中的字段 然而 由于某种原因 它评估为void include
  • @ManagedProperty 不反映更改并始终返回 null

    我试图将一个 sessionscoped bean 的值注入到 viewscoped bean 中 但它一直返回 null 这是一个片段 import javax faces application FacesMessage import
  • 通过大量连接优化 MySQL 查询

    我目前运行一个网站 该网站在列表中跟踪最新的分数和评级 该列表有数千个经常更新的条目 并且该列表应该可以按这些分数和评级列进行排序 目前获取这些数据的 Mysql 看起来像 大致 SELECT e SUM sa amount AS scor
  • 如何在 Appengine 中删除或重置搜索索引

    情况 好的 我们已经在 appengine 中安装了我们的应用程序 并激活了全文搜索 我们在文档上设置了一个索引 其中包含名为 日期 的字段 该字段是 DateField 现在我们更改了文档的模型 因此字段 date 现在是 Numeric
  • Hadoop 启用日志记录

    我正在尝试在单集群模式下使用从源代码构建的 hadoop 我检查了 0 22 0 alpha 1 我在日志记录方面遇到了一些问题 如何启用调试日志 我尝试添加 log4j logger org apache hadoop mapred Jo
  • 使 Excel 图表上的 X 轴和 Y 轴比例相等

    我希望 Excel 图表的 X 轴和 Y 轴在屏幕上具有相同的比例 因为我正在绘制地理数据 1 公里 x 1 公里的正方形应该看起来像一个正方形 而不是一个矩形 即地图在一个或另一个方向上不会被挤压 在 Matlab 中 执行此操作的命令是
  • 无法在 Cron 中运行 Python 脚本

    我有一个简单的 Python 脚本 我试图将其设置为 cron 作业 但它拒绝运行 当我单独运行它时 它确实会运行 并将其称为 python script py 我尝试在 crontab 中设置环境变量 但无法让它工作 我的 crontab
  • C 位标志枚举应如何转换为 C++?

    C 大部分是 C 的超集 但并非总是如此 特别是 虽然 C 和 C 中的枚举值都隐式转换为 int 但反之则不然 只有在 C 中 int 才会转换回枚举值 因此 通过枚举声明定义的位标志无法正常工作 因此 这在 C 中是可以的 但在 C 中
  • 在 PDF 页面上运行 Chrome 插件

    使用 Chrome 扩展程序 我想 检测当前选项卡是否已加载 PDF 文件 向 popup html 添加一个按钮以提供将 PDF 转换为 HTML5 的功能 获取 PDF 文件的 URL 并将其发送到在线服务 为了实现 1 我认为本页上的
  • Javascript:无法使用 getElementById 获取元素[重复]

    这个问题在这里已经有答案了 好的 我需要新的眼光 因为我还在这个问题上待了一个小时 这是我的简单 HTML 代码 testssio html 其中包含 javascript 脚本 div div 但这不起作用 使用调试器 我得到
  • 在 Android 中按下按钮时增加按钮的大小

    如何使按钮的大小在按下时稍微增大并在释放时再次减小 这是为了通过使用尺寸和不同的颜色来突出显示按下的按钮 问候 琪琪 做你的Button一个字段 并修改其大小OnTouchListener与之相关 使用 OnTouchListener 你可
  • Doctrine DQL 条件查询

    我正在尝试使用 Doctrine 的查询生成器构建动态查询 假设我还想在下面选择一个结束时间 仅当输入一个结束时间时 我如何有条件地将其添加到声明中 query this gt getEntityManager gt createQuery
  • Excel VBA - 如果单元格是整数,则删除整行

    我一直在尝试使用一些关于如何删除 Excel VBA 上的整行的代码片段 但我无法修改它们以包含 IsNumber 验证 我需要能够选择一个活动区域 例如 Set r ActiveSheet Range A1 C10 当它逐行浏览时 并检查