返回从 A1 到最后使用的真正单元格的范围

2023-11-29

我想选择电子表格中的所有行和列。宏需要是动态的,因为每次调用宏时列数和行数往往会发生变化。它还需要能够考虑空白行和列。

该子程序完成部分过程:

Sub FindLastCell()
Cells.Find(What:="*", After:=[A1], SearchDirection:=xlPrevious).Select
End Sub

它查找并选择电子表格中的最后一个单元格。现在我已经找到电子表格中的最后一个单元格,如何选择单元格 A1 到 LastCell 作为范围?


您需要将这些 mods 添加到代码中

  1. 该表可能是空白的,所以你不应该使用Select with Find因为如果“查找”不返回任何内容,则会出现错误。相反,测试范围对象Is Not Nothing
  2. Find可以按行和按列搜索。你需要确定both最后一行和最后一列以确定真正的最后使用的单元格
  3. 一旦你确定了最后一个电池的真正用途Range设置从第一个单元格 (A1) 到由两个单元格确定的单元格的范围Find ranges

请看下面的代码

If the Find获取一个值,然后生成一个范围rng3从 A1 到两人识别的最后使用的单元格Finds.

enter image description here

Sub GetRange()
    Dim rng1 As Range
    Dim rng2 As Range
    Dim rng3 As Range
    Set rng1 = Cells.Find("*", [a1], xlFormulas, , xlByRows, xlPrevious)
    Set rng2 = Cells.Find("*", [a1], xlFormulas, , xlByColumns, xlPrevious)
    If Not rng1 Is Nothing Then
        Set rng3 = Range([a1], Cells(rng1.Row, rng2.Column))
        MsgBox "Range is " & rng3.Address(0, 0)
        'if you need to actual select the range (which is rare in VBA)
        Application.Goto rng3 
    Else
        MsgBox "sheet is blank", vbCritical
    End If
End Sub
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

返回从 A1 到最后使用的真正单元格的范围 的相关文章

  • 将单独的范围放入二维数组中

    我正在尝试获取大小的二维数组 x 3 填充 X只是工作表的大小 行数 并且有 3 列我感兴趣 例如 这些列彼此不靠近arr i 0 应从 AA 栏开始填写 arr i 1 应来自 K 列 并且arr i 2 需要来自 L 列 我尝试按以下方
  • ATL创建的COM接口继承IDispatch但后期绑定不起作用

    这是我的 IDL 文件 IFrame 是一个双接口 同时继承了 IDispatch 和 IUnknown object uuid C5AD0517 37FC 479C 9C7A A063B17E4A2E dual nonextensible
  • 请参阅使用代号的表

    我在此代码中收到 类型不匹配 错误 With Worksheets Sheet1 Error here my code here End With 我的床单CodeName is sheet1 有人可以帮我消除错误吗 1 按索引参阅表 Wi
  • 遍历 Excel 工作表

    这是我的代码 我是 VBA 新手 所以我不确定如何迭代多个页面 这是我的代码 Dim ws As Worksheet Sub spellCheck For Each ws In ActiveWorkbook Worksheets Cells
  • 用一行代码隐藏所有自动筛选下拉列表

    我有一个相当大的 Excel 文件 其中包含大量数据 我使用验证列表 该列表通过 VBA 生成过滤器 因为我有 52 列 一年中的每周一列 所以我会自动在每个标题中看到一个小下拉箭头 我使用这段代码手动隐藏每列的下拉箭头 Worksheet
  • Excel VBA 公式德语/法语/意大利语/俄语/荷兰语/外国函数

    当我将数据添加到工作簿时 需要将公式从较早的单元格复制到新单元格 我使用以下公式来计算我的增长率 WENN ODER K9 L9 WENNFEHLER L9 K9 K9 由于这非常耗时 我想用宏来改进它 因此编写了以下代码 Sub Grow
  • 强制 Excel 将多张纸作为单个作业打印

    在某些 Excel 2003 工作簿中 当我尝试print如果有多个工作表 Excel 将这些工作表视为单独的打印作业 这让我一直在编写的 Excel 自动化应用程序感到困惑 因为它会导致 Adob e PDF Printer 停止并询问用
  • org.apache.poi 中的异常

    我试图编写一个可以读取和写入的程序 xlsx文件中 下面提供的代码旨在能够编写其第一个 Excel 程序 package excel reader import java io FileOutputStream import java io
  • 如何以可读的方式重写Excel公式?

    我有一个 Excel 文件 其中包含以下公式 IF OR ISERROR G16 ISERROR G17 X16 IF OR G16 xxx G16 yyy G16 zzz Y16 IF G16 333 N A IF G17 333 Z16
  • Excel vba 创建范围的所有可能组合

    我有一个问题 我无法在网络上的任何地方找到它 它可能在那里 但我找不到它 呵呵 我有一个包含 13 列数据的电子表格 每列都包含需要进入整体测试用例的参数的变体 它们都不同 比如 E 101 105 110 120 J Upper S上行L
  • 如何在 Windows Phone 8 应用程序中读写 xls、docs 和 csv 文件 [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 询问代码的问题必须对所解决的问题表现出最低限度的了解 包括尝试的解决方案 为什么不起作用以及预期结果 也可以看看 Stack Overfl
  • 如何查找 Outlook .pst 文件的完整路径?

    有没有办法通过 API 调用或注册表项以编程方式查找当前用户的 Outlook pst 文件的位置 With 展望赎回 http www dimastr com redemption 您可以使用 VBA 迭代消息存储RDOStores集合
  • 运行时错误“3065”无法执行选择查询

    我已经写了很多查询 但我正在努力解决这一问题 当我运行以下 sql 时 出现运行时错误 3065 Dim db As DAO Database Dim sqlstring As String Set db DBEngine 0 Databa
  • VBA 用户表单:防止组合框在 KEYDOWN 时转义

    社区 有一种方法可以防止活动组合框在列表末尾 或开头 按下向下箭头 或向上箭头 时失去焦点 如果有更好的方法来做到这一点 最好使用 MS 标准属性 请分享 问题 当位于组合框中列表的末尾时 如果您点击向下箭头 它会将您移至活动组合框下方的任
  • 具有该名称的查询已存在

    所以我想使用 Excel VBA 创建雅虎财经历史数据 csv 下载 的自动查询 我设置了一个函数 以便 Excel 会自动查询股票代码及其开始日期和结束日期 分别为 K1 K2 K3 这是代码 Sub YFIN get YFIN get
  • Excel VBA 循环遍历 10,000 组行,每组包含 20 行

    如何将当前按行循环的 Excel VBA 代码转换为循环 20 行集 据我了解 Step函数可能与以下行一起使用 Range V1 Value Application Index vInput1 r 0 但是 我不确定如何修改代码以循环遍历
  • 以编程方式创建验证列表

    我有一组从外部源进入 VBA 代码的数据 我希望能够分配该数据以用作此工作簿中一张工作表的单元格下拉框中的验证 但是 我不想将该数据复制到工作表中 然后使用命名范围 可能有相当多的数据 而且这感觉不是很有效 我确信一定有办法 但我还没有找到
  • 如何修复此“输入超出文件末尾”错误? [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 我必须找到包含以下内容的所有步骤PGM FTP然后阅读所有行 直到找到另一个没有的步骤PGM FTP 它可以是任何东西 除了FTP 我需要
  • VBA改变复杂的公式

    我使用带有单选按钮的代码 请参阅最后一个代码 将新行插入到第 15 行 这会将旧数据向下推 同时将相同的公式复制到之前曾经存在过的第 15 行 在第 15 行中 单击该按钮 单击该按钮后 我可以在 E15 中输入 3 位数据 然后按 Ent
  • 在VBA中使用类模块作为命名空间是否有任何陷阱

    VBA 不支持命名空间 Java 人员的包 其他语言中的命名空间有助于避免歧义并补充成员名称自动完成等工具 在 VBA 中模拟命名空间的一种方法是在类模块中声明什么是事实上的静态方法 然后在标准模块中声明该类的默认实例 这甚至是一些 Mic

随机推荐

  • 学习Python:If条件一直执行

    我正在学习 python 我不明白为什么下面的程序会打印你的数字比我想象的要多即使猜测的数字较小 就像在 python 中一样 它是比较字符串而不是数字 number 32 tries 1 print I have chosen a num
  • 未捕获的 ReflectionException:类日志不存在 Laravel 5.2

    我目前正在尝试从 github 克隆我的现有项目 克隆后我运行composer install在此过程中我收到以下错误 Uncaught ReflectionException Class log does not exist 我在 Cen
  • 在Ui线程上执行同步操作

    我正在尝试开发 Windows 应用程序并遇到问题 我有一个 MainPage xaml 和另外 2 个 StartScreen xaml 和 Player xaml 如果某些条件成立 我将切换主页的内容 因此 我在 StartScreen
  • PHP从页面中提取文章摘录

    任何人都知道如何从任何给定的文章页面生成摘录 因此可以从许多类型的网站获取资源 就像当你将网址粘贴到帖子中时 Facebook 所做的那样 谢谢 你想做的事情叫做网页抓取 这样做的基本方法是捕获页面 您可以使用以下命令抓取 URLfile
  • 使用 URL.createObjectURL 重建 PDF 后损坏

    我试图从服务器传递 PDF 文件并将其显示在浏览器中 但输出已损坏 var blob atob data Package console log blob var file new Blob blob type application pd
  • 如何在 Android 中显示来自 google 驱动器 url 的视频

    我想在 Android 应用程序中显示视频 我在谷歌上搜索并找到了下面的代码 VideoView videoView VideoView findViewById R id videoView 字符串 vid 地址 https docs g
  • bash 脚本中的“exec”之后不会运行任何代码[重复]

    这个问题在这里已经有答案了 我在命令名称中使用变量扩展进行测试的示例 bash 脚本 test command w variable expansion in name sh bin bash Gabriel Staples 21 Mar
  • 必须声明标量变量错误

    这与我最后一个问题有关 我有这个代码 DECLARE PatientId UNIQUEIDENTIFIER DECLARE FormId NCHAR 16 DECLARE columns VARCHAR 8000 DECLARE query
  • 将 JFileChooser 置于所有窗口之上

    我似乎对文件选择器对话框的非常简单的实现有一个问题 它要求我每次都最小化 Netbeans 才能实现它 而且现在特别是在测试时变得非常令人沮丧 我在网上看到了一些解决方案 包括SO但似乎没有一个能做到这一点 而其他一些对于我目前的水平来说似
  • 在 swing 中调整图像大小

    我有一段代码 用于将图像大小调整为窗帘大小 我想将分辨率更改为 200 dpi 之类的值 基本上我需要它的原因是因为我想显示用户选择的图像 有点大 然后如果用户批准我想在不同的地方显示相同的图像但使用较小的分辨率 不幸的是 如果我给它一个大
  • 如何在 html 中嵌入 .AVI?

    我在网上找到了一些 html 中的 AVI 示例 但我的页面http pianocheater com VIDEO html是有问题的 我的电脑上的 chrome 没问题 在 IE 中 您会在顶部看到那个该死的栏 然后视频就变成空白了 它可
  • 在 Python 中进行多处理时无法使用输入

    我想同时运行2个进程 1 将继续每秒打印 a 另一个进程将要求输入 当输入为 Y 时 第一个进程将停止打印 a 我对 Python 还很陌生 我不明白 这是我到目前为止想到的 from multiprocessing import Proc
  • 谁能告诉我 pragma 语句的用法

    谁能告诉我 C 和 Ada 中 pragma 的使用 如果可能的话请提供一些例子 C99 中有 3 个标准编译指示 pragma STDC FP CONTRACT on off switch pragma STDC FENV ACCESS
  • 几何平均值:有内置的吗?

    我试图找到一个内置的几何平均值 但找不到 显然 内置函数不会在 shell 中工作时为我节省任何时间 我也不怀疑准确性有任何差异 对于脚本 我尝试尽可能频繁地使用内置函数 其中 累积 性能提升通常是显而易见的 万一没有 我怀疑是这样 这是我
  • 如何在 Python 中将一个内存 SQLite 数据库复制到另一个内存 SQLite 数据库?

    我正在为 Django 编写一个测试套件 它以树状方式运行测试 例如 测试用例 A 可能有 2 个结果 测试用例 B 可能有 1 个结果 测试用例 C 可能有 3 个结果 树看起来像这样 X A B C X B X X C X X 对于上面
  • 要求在 Prestashop 模块上的一个文件中自动加载的方法?

    我正在尝试将一组库与 Composer 一起用于 Prestashop 模块 我目前的方法是包括vendor autoload php每个文件上的文件 mymodule php controllers front foo php contr
  • 为什么我们需要使用 boost::asio::io_service::work ?

    有一个使用 boost asio 的示例 为什么这个例子使用 boost asio io service work 为什么是srv run 没有调用线程来执行任务 int main boost asio io service srv boo
  • 尝试使用 C# 中的 ODbc 从 MSysObjects 读取数据,但出现无权限错误

    如标题所述 我试图从 Access 2010 数据库中的 MSysObjects 读取数据 但出现异常 告诉我不允许从该表中读取数据 我可以读出其他非 MSys 表 SQL Query I am using SELECT FROM MSys
  • 如果视图具有特定类(backbone.js),则点击时触发函数

    我有一个div由backbone js视图生成 当用户点击这个div 一类active被添加到div和函数addToSet被执行 Problem 我希望在视图的时候触发另一个函数div有课active 但是 我的尝试如下所示总是导致addT
  • 返回从 A1 到最后使用的真正单元格的范围

    我想选择电子表格中的所有行和列 宏需要是动态的 因为每次调用宏时列数和行数往往会发生变化 它还需要能够考虑空白行和列 该子程序完成部分过程 Sub FindLastCell Cells Find What After A1 SearchDi