VBA10-处理Excel的动态数据区域

一、end获取数据边界

1、基本语法

1-1、示例:

2、配合row和column使用

2-1、示例1

2-2、示例2

此时,不管这个有数值的区域,怎么增加边界,对应的统计数据也会跟着变的!

二、end的缺陷

若是数据区域不连贯,则无法得到正确的行号和列号。

示例:

此时,使用end得到的就是空格前面的行号和列号。

解决方式:

从最后一行,网上获取

从最后一列,往左获取

此时还有一个问题,若是数据区域的边界上存在空的单元格,则还是会存在错误。

三、UsedRange

3-1、定义

UsedRange是worksheet的一个属性,它代表指定工作表上的所用区域。

UsedRange 属性是一个非常有用的属性,它返回一个 Range 对象,该对象表示工作表中实际使用过的区域。这包括所有包含数据或格式的单元格。通过 UsedRange,你可以方便地获取或操作工作表中实际有内容的区域,而不必手动指定范围。

3-2、编写格式

工作表worksheet.UsedRange.方法/属性

3-3、示例

示例1:

示例2:

3-4、UsedRange局限

需要数据区域很干净。

四、worksheet对象

4-1、Worksheet 对象

  • 定义Worksheet 对象代表 Excel 工作簿中的一个单一工作表。
  • 用途:用于直接操作工作表中的数据、格式和属性。
vbnet 复制代码
Dim ws As Worksheet
Set ws = ThisWorkbook.Sheets("Sheet1")
ws.Range("A1").Value = "Hello, World!"

4-2、Sheet 对象

  • 定义Sheet 对象是一个更广泛的术语,它代表工作簿中的一个工作表(Worksheet)、图表(Chart)或对话框表(DialogSheet)。
  • 用途 :用于通用操作,当你不确定对象类型时可以使用。
vbnet 复制代码
Dim sh As Sheet

' 获取第一个工作表,可以是 Worksheet、Chart 或 DialogSheet
Set sh = ThisWorkbook.Sheets(1) 

4-3、Worksheet对象 对比 Sheet对象

  1. 层次关系
    • Sheet 是更一般的对象,可以包含 WorksheetChartDialogSheet
    • WorksheetSheet 的一个特定类型,专门用于工作表操作。
  2. 使用场景
    • 使用 Worksheet 对象时,你明确知道你在操作一个工作表,可以访问工作表特有的属性和方法。
    • 使用 Sheet 对象时,你可能不确定对象的类型,因此只能访问通用的属性和方法。
  3. 类型转换
    • 当你从 Sheet 对象获取到一个对象时,你可能需要将其转换为 Worksheet 对象以访问特定属性或方法。这可以通过类型检查(Type Checking)和转换(Type Casting)来实现。
vbnet 复制代码
Dim sh As Sheet
Set sh = ThisWorkbook.Sheets(1)
If TypeName(sh) = "Worksheet" Then
    Dim ws As Worksheet
    Set ws = sh ' 类型转换(隐式)
    ws.Range("A1").Value = "Hello, Worksheet!"
End If

4-4、总结

  • 使用 Worksheet 对象时,你针对的是具体的工作表,可以访问其特有的属性和方法。
  • 使用 Sheet 对象时,你处理的是工作簿中的任何类型的表(工作表、图表或对话框表),但只能访问通用属性和方法。

回顾:Worksheets对象

相关推荐
爱吃山竹的大肚肚1 小时前
Spring Boot 与 Apache POI 实现复杂嵌套结构 Excel 导出
java·spring boot·后端·spring·spring cloud·excel
无敌的黑星星1 小时前
office 批量word转pdf
pdf·word·vba
AI_56783 小时前
Python RPA解放Excel生产力
python·excel·rpa
七夜zippoe3 小时前
AutoGen数据分析智能体实战:让Excel自动说话
人工智能·数据分析·excel·智能体·autogen
开开心心_Every4 小时前
定时管理进程:防止沉迷电脑的软件推荐
xml·java·运维·服务器·网络·数据库·excel
Hello.Reader19 小时前
Flink 系统内置函数(Built-in Functions)分类、典型用法与选型建议
大数据·flink·excel
彭于晏Yan1 天前
excel导入导出
spring boot·excel
lbb 小魔仙1 天前
Python 读取 Excel 文件:openpyxl 与 pandas 实战对比
python·excel·pandas
徐赛俊1 天前
# Excel 图表自动变色教程(基于控制单元格)
excel
2501_930707781 天前
如何使用C#代码将 Excel 中的图表转换为图片
excel