当前位置: 首页 > news >正文

王佩丰24节Excel学习笔记——第二十四讲:宏表函数

【以 Excel2010 系列学习,用 Office LTSC 专业增强版 2021 实践】


【本章技巧】
  1. 宏表函数不能直接使用。get.cell(参数一,参数二),参数一要参考类型表。
  2.  获得单元格的公式有很多种方法,
    如:宏写法:get.cell(6,单元格地址)
    如:Formulatext() 函数写法
  3. 巧用 evaluate()函数
  4. 巧用 substitute()函数
  5. 了解reftext(active.cell)获取当前单元格地址

 一、利用宏表函数获取信息
1、get.cell函数

        GET.CELL(type_num, reference) 

        Type_num    指明单元格中信息的类型。下表列出 Type_num 的可能值与其对应的结果。

        Reference    是提供信息的单元格或单元格范围。  参数形式: [ABC.XLS]sheet1!A1,如果引用的是单元格范围,使用引用中第一个范围的左上角的单元格,如果引用被省略,默认为活动单元格。

        参数Type_num:有如下数据:

GET.CELL(type_num, reference)
Type_num    指明单元格中信息的类型。下表列出 Type_num 的可能值与其对应的结果。
Reference   是提供信息的单元格或单元格范围。  参数形式: [ABC.XLS]sheet1!A1
如果引用的是单元格范围,使用引用中第一个范围的左上角的单元格
如果引用被省略,默认为活动单元格。
(下表中的黑体字为常用参数)
Type_num    返回
1以当前工作区文字引用类型绝对引用左上角引用单元格。
2顶部引用单元格的行数。
3最左边引用单元格的列数。
4同TYPE引用
5引用内容。
6文字,以工作区设置决定的 A1 或 R1  C1 类型引用公式。
7文字的单元格的数字格式(如“m/d/yy”或“General”)。
8指示单元格水平对齐的数字
1=一般 
2=左对齐 
3=置中 
4=右对齐 
5=填充 
6=两端对齐 
7=跨列置中 
9指示分配给单元格左侧边框线的类型
0 = 无边框 
1 = 细线 
2 = 中等线 
3 = 虚线 
4 = 点线 
5 = 粗线 
6 = 双线 
 7 = 发丝线 
10指示分配给单元格右侧边框线的类型,对应指定返回值的描述参见 type_num 9
11指示分配给单元格顶端边框线的类型,对应返回值的描述参见 type_num 9
12指示分配给单元格底端边框线的类型,对应返回值的描述参见 type_num 9
13 是0至8之间的一个数字,当在[格式]菜单下选择[单元格]命令时,
[单元格格式]对话框的[图案]标签显示被选择的单元格。这个数字指明其模式。如模式未被选择,返回0。【注此处似有误。应为1-18之间的一个数。至[图案]的样式】
14如果单元格被锁住,返回TRUE;否则,返回FALSE。
15如果单元格中公式被隐藏,返回TRUE;否则返回FALSE。
16一个含有两顶的水平数组,包括活动单元格的宽度和一个逻辑值,这个逻辑值指明单元格宽度是否改变,
如为TRUE,标准宽度改变,如为FALSE,仍为自定义宽度。
17用点表示的单元格的行高
18字体名称,文字形式
19用点表示的字体大小
20如果单元格中所有字符或只有第一个字母为黑体,返回TRUE;否则,返回FALSE。
21如果单元格中所有字符或只有第一个字符为斜体。返回TRUE;否则,返回FALSE。
22如果单元格中所有字符或只有第一个字符为加底线,返回FALSE。
23如果单元格中所有字符或只有第一个字符为加删除线,返回TRUE;否则,返回FALSE。
24是1-56的一个数字,代表单元格中第一个字符的字体颜色。如果字体颜色为自动生成,返回0。
25如果单元格中所有字符或只有第一个字符为空心体,返回TRUE;否则,返回FALSE。
Microsoft Excel for Windows 不支持空心字体格式。
26如果单元格中所有字符或只有第一个字符加阴影,返回TRUE;否则,返回FALSE。
Microsoft Excel for Windows 不支持阴影字体格式
27 指示单元格中能否进行手动分页线的数字。
0 = 没有分页线 
1 = 行 
2 = 列 
3 = 行和列 
28行的级数(分级显示)
29列的级数(分级显示)
30如果所包含的活动单元格为摘要行,返回TRUE;否则,返回FALSE。
31如果列所包含的活动单元格为摘要列,返回TRUE;否则,返回FALSE。.
32【注本条说明有误,点此链接】如窗口只包括一个表,其文件名为不含扩展名的工作簿 的文件名,为包含单元格的工作簿或工作表的文件名,
以 BOOK1.XLS 的形式返回簿的文件名;否则,以"[BOOK1]sheel"的形式返回表的文件名。
33如单元格被折行,返回TRUE;否则,返回FALSE。
34是1-16之间的一个数,代表左侧边框线颜色。如颜色自动生成,返回零。
35是1-16之间的一个数,代表右侧边框线颜色。如颜色自动生成,返回零。
36是1-16之间的一个数,代表顶端边框线颜色。如颜色自动生成,返回零。
37是1-16之间的一个数,代表底端边框线颜色。如颜色自动生成,返回零。
38是1-16之间的一个数,代表前景颜色。如颜色自动生成,返回零。
【包括填充颜色和图案颜色】
39是1-16之间的一个数,代表背景颜色。如颜色自动生成,返回零。【阴影背景?】
40单元格风格,文字形式。
41不经翻译返回活动单元格中的公式(用于图别设定的宏表)。
42用点表示的活动窗口左边界到单元格左边界的水平距离,如果窗口滚动到单元格外,可能为负值。
43用点表示的活动窗口顶边界到单元格顶边界的垂直距离,如果窗口滚动到单元格外,可能为负值。
44用点表示的活动窗口右边界到单元格右边界的水平距离,如果窗口滚动到单元格外,可能为负值。
45用点表示的活动窗口底边界到单元格底边界的水平距离,如果窗口滚动到单元格外,可能为负值。
46如果单元格包含文字注释,返回TRUE;否则,返回FALSE。
47如果单元格包含声音注释,返回TRUE;否则,返回FALSE。
48如果单元格包含公式注释,返回TRUE;否则,返回FALSE。
49如果单元格为数组的一部分,返回TRUE;否则,返回FALSE。
50 指示单元格垂直方向对齐方式。
1 = 顶对齐 
2 = 置中 
3 = 底对齐 
4 = 两端对齐 
51指示单元格垂直方向。
0 = 水平 
1 = 垂直 
2 = 向上 
3 = 向下 
52单元格前缀(或文字对齐)字符,如果单元格不包括任何内容,代表空文本(“”)。
53当前显示的单元格的内容,文本形式,包括格式化单元格所加上去的数字或符号。
54返回包含活动单元格的数据透视表视图的文件名。
55返回数据透视表视图中单元格的位置。
56在数据透视表视图中,返回包含活动单元格引用的字段名称。
57如果单元格中所有的字符,或只有第一个字符被格式化为上标字体,返回TRUE;否则,返回FALSE。
58作为显示在[单元格格式]对话框中[字体]标签定位单元格中所有的字符或只第一个字符的正文
返回字体风格,如 “Bold Italic”。
59返回下加线风格的数。
1 = 无底线 
2 = 单底线 
3 = 双线 
4 = (single accounting) 
5 = (double accounting) 
60如果单元格中所有的字符,或只有第一个字符被格式化为下标字体,返回TRUE;否则,返回FALSE。
61作为文本返回活动单元格数据透视表项的文件名。
62返回工作簿和"[book1]sheet1"形式的当前表的文件名。【注:应为“活动工作表”】
63返回单元格的填充(背景)颜色。
64返回单元格的图案(前景)颜色。
65如果[增加缩格]对齐选项处于开的状态( 只用于Microsoft Excel的远东版本返回TRUE;
否则,返回FALSE
66返回包含BOOK1.XLS 形式单元格的工作簿的簿名。

案例:取背景色的值

提取公式:

2、get.workbook函数 

        GET.WORKBOOK(type_num, name_text) 

        Type_num    指明要得到的工作簿信息类型的数。

        Name_text    是打开的工作簿的名字。如果name_text被省略,默认为活动工作簿。

        参数Type_num:参数值

GET.WORKBOOK(type_num, name_text)
Type_num    指明要得到的工作簿信息类型的数。
Name_text    是打开的工作簿的名字。如果name_text被省略,默认为活动工作簿。
Type_num    返回
1正文值的水平数组,返回工作簿中所有表的名字。
2通常返回错误值#N/A。
3正文值的水平数组,返回工作簿中当前选择的表的名称。
4工作簿中表的数。
5如果工作簿含有发送名单,返回TRUE;否则返回FALSE。
6正文值的水平数值,返回所有未接收到文件的接受者的名字。
7以文本形式返回当前发送名单的主题线。
8以文本形式返回发送名单的信息正文。
9如果文件被发送,一个接一个被接收,返回1;如果全部一次被发送,返回2。
10如果[发送名单]对话框中选择[返回送毕信息]选择框,返回TRUE;否则返回FALSE。
11如果当前接收发送当前文件,返回TRUE;否则返回FALSE。
12如果[发送名单]对话框中选择[跟踪状态]选择框,返回TRUE;否则返回FALSE。
13工作簿[发送名单]:
  0 =不被发送      
 1 =进展中的路径选择,或对于用户工作簿已被发送。 
  2 =发送已完成。      
14如果工作簿结构被保护,返回TRUE;否则返回FALSE。
15如果工作簿窗口被保护,返回TRUE;否则返回FALSE。
16【说明有误?点击链接】以文字形式返回工作簿的名称,不包括驱动器,目录或文件, 或窗口编号,等价于GET.DOCUMENT(1)
17如果文件为只读,返回TRUE,否则返回FALSE。等价于GET,DOCUMENT(34)
18如果表被写保护,返回TRUE,否则返回FALSE。等价于GET.DOCUMENT(35)
19当前文件允许写的用户的名字,等价于GET.DOCUMENT(36)。
20对应于显示在[另存为]对话框中的文件的文件类型的数字。等价于GET.DOCUMENT(37)。
21如在[另存为]对话框中选择了[建立备文件]选择框,返回TRUE;否则,返回FALSE。等价于GET.DOCUMENT(40)
22如在[选择]对话框的[重新计算设置]标签中选择了[保存外部链接值]选择框,返回TRUE。等价于GET.DOCUMENT(43)
23如果工作簿有一个苹果开放合作环境(OCE)返回TRUE;否则返回FALSE。如未安装OCE(mailer),返回#N/A。
24如果工作簿在最后一次保存后被改变,返回TRUE。若未改变(当被关闭,不提示保存),返回FALSE。
25以文字形式水平数组,返回Power Talk(mailer)的To线上的接收。
26以文字形式水平数组,返回Power Talk(mailer)的Cr线上接收。
27以文字形式水平数组,返回Power Talk(mailer)的Bxx线上的接收。
28以文字形式返回Power Talk(mailer)的主题。
29以文字形式水平数组,返回Power Talk(mailer)的外壳。
30如果Power Talk(mailer)从另一用户[*(相对于刚增加但不是发送)。
31作为一系列数返回Power Talk mailer)被发送的日期和时间,如(mailer)未被发送,返回错误值#N/A。
32以文本形式返回Power Talk(mailer)的发送者的名字,如(mailer)未被发送,返回错误值#N/A。
33以文字形式返回显示在[摘要信息]对话框中的文件的标题。
34以文字形式返回显示在[摘要信息]对话框中的文件的主题。
35以文字形式返回显示在[摘要信息]对话框中的文件的作者。
36以文字形式返回显示在[摘要信息]对话框中的文件的关键字。
37以文字形式返回显示在[摘要信息]对话框中的文件的注释。
38活动工作表的名字。

 事例:定义名称,获得当前工作表的名称

使用index()函数获取一组数据内的第几个值。

修改成自动的就要使用ROW()得到:

给获得的工作表名做上超级链接:

获取使用 HYPERLINK() 函数

3、宏表函数的更新问题 

二、宏表函数常见应用
1、EVALUATE函数

        EVALUATE(formula_text) 

        基本用法,用于公式的运算,如下列情况:

2、SUBSTITUTE()函数 
        

                

        案例:计算A9单元格中三个科目的和,思路,将substitute()函数将逗号转换成加号,再使用Evaluate()函数计算。     

3、REFTEXT(ACTIVE.CELL())  

 

=REFTEXT(ACTIVE.CELLO))&T(NOWO):获取当前单元格地址

相关文章:

王佩丰24节Excel学习笔记——第二十四讲:宏表函数

【以 Excel2010 系列学习,用 Office LTSC 专业增强版 2021 实践】 【本章技巧】 宏表函数不能直接使用。get.cell(参数一,参数二),参数一要参考类型表。 获得单元格的公式有很多种方法, 如:宏写法:get.cel…...

Navicat 17 for Mac 数据库管理软件

Mac分享吧 文章目录 效果一、准备工作二、开始安装1. 双击运行软件,将其从左侧拖入右侧文件夹中,等待安装完毕。2. 应用程序/启动台显示Navicat图标,表示安装成功。 二、运行测试运行后提示:“Navicat Premium.pp”已损坏&#x…...

现代光学基础2

yt2 目录 激光器概述红宝石激光器 工作原理主要特点举例说明 固体激光器 分类与特点钛-蓝宝石激光器锁模技术 光纤激光器 优势与应用掺铒光纤放大器(EDFA)隔离器与法拉第效应 气体激光器 常见类型工作原理举例说明 半导体激光器 现状与优势工作原理应用…...

Git 入门(一)

git 工作流如下: 命令如下: clone(克隆): 从远程仓库中克隆代码到本地仓库checkout (检出):从本地仓库中检出一个仓库分支然后进行修订add(添加): 在提交前先将代码提交到暂存区com…...

mysql自定义安装

1、下载安装包 我是在windows上安装,所以选择“Mysql Installer for Windows” 2、安装mysql 双击“mysql-installer-community-8.0.40.0.msi”,开始启动安装 这里选择安装项,这里只选择了两项。workbench是图形化管理工具,比较吃…...

微软自带日志输出+Serilog

安装两个 NuGet 包:Microsoft.Extensions.Logging,Serilog.AspNetCore 如何配置Program.cs,builder 具体如何配置自行解决: var builder WebApplication.CreateBuilder(args); builder.Logging.ClearProviders(); builder.Loggi…...

《PHP MySQL 创建数据库》

《PHP MySQL 创建数据库》 介绍 PHP是一种广泛使用的服务器端脚本语言,而MySQL是一种流行的关系型数据库管理系统。将PHP与MySQL结合使用,可以让您创建动态、交互式的网站。在本文中,我们将详细介绍如何使用PHP来创建MySQL数据库。 准备工…...

Python虚拟环境管理

Python管理虚拟环境主要是通过venv模块来完成的,这是Python标准库的一部分,因此不需要安装额外的包即可使用。以下是使用venv创建和管理虚拟环境的基本步骤: 创建虚拟环境 打开命令行界面(在Windows上是CMD或PowerShell&#xf…...

一个在ios当中采用ObjectC和opencv来显示图片的实例

前言 在ios中采用ObjectC编程利用opencv来显示一张图片,并简单绘图。听上去似乎不难,但是实际操作下来,却不是非常的容易的。本文较为详细的描述了这个过程,供后续参考。 一、创建ios工程 1.1、选择ios工程类型 1.2、选择接口模…...

c++ vector 使用find查找指定元素方法

在 C 中&#xff0c;std::vector 是一个动态数组&#xff0c;用于存储同类型元素的序列。如果你想在 std::vector 中查找指定元素&#xff0c;可以使用 std::find 算法。std::find 是定义在 <algorithm> 头文件中的标准库函数。 以下是一个示例代码&#xff0c;展示了如…...

leetcode 732. 我的日程安排表 III

题目&#xff1a;732. 我的日程安排表 III - 力扣&#xff08;LeetCode&#xff09; 这个数据规模&#xff0c;暴力就够了 struct Book {int begin;int end;Book(int b, int e) {begin b;end e;} }; class MyCalendarThree { public:MyCalendarThree() {}int book(int star…...

k8s系列--docker拉取镜像导入k8s的containerd中

# 确认一下当前集群中正在运行的 Pod 和命名空间 kubectl get pods -A# 示例一&#xff1a;拉取并导入 CoreDNS 镜像 docker pull registry.cn-hangzhou.aliyuncs.com/google_containers/coredns:v1.11.1 docker save registry.cn-hangzhou.aliyuncs.com/google_containers/cor…...

38-其他地方使用模式

38-其他地方使用模式 模式除了可以在 match 表达式中使用外&#xff0c;还可以使用在变量定义&#xff08;等号左侧是个模式&#xff09;和 for in 表达式&#xff08;for 关键字和 in 关键字之间是个模式&#xff09;中。 但是&#xff0c;并不是所有的模式都能使用在变量定…...

单片机按键扫描程序,可以单击、双击、长按,使用状态机,无延时,不阻塞。

根据按下时的时长、间隔来判断是否是连按或者长按。当连按间隔很短时&#xff0c;计录连按次数超过连接间隔时&#xff0c;回报按下次数根据按键次数自行判断是单击、双击、三击、四击。。。最多记录15击。 结构体版&#xff1a; #define KEY_CHANNEL_COUNT (6 8 8) struct…...

Django中自定义模板字符串

首先在目录中创建名为 templatetags 的文件夹 然后在文件中创建 python 文件 然后再相应的 HTML 模板文件中导入 {% load python的文件名 %} 然后在 HTML 文件中通过进行使用 {% 函数名 %} python文件中的代码 首先导入 from django import templateregister template…...

暴雨总裁孙辉:混合式人工智能是大势所趋

当前&#xff0c;生成式人工智能技术的突破和发展&#xff0c;大大加速了各行各业的数字化、智能化进程。在充满不确定性的全球发展环境下&#xff0c;人工智能已成为驱动未来增长最确定、最核心的力量。 对此&#xff0c;暴雨总裁孙辉认为&#xff0c;2025年&#xff0c;人工…...

【小制作】米家模拟手指点击

代码功能解释 这段代码是一个基于Arduino平台的控制程序&#xff0c;主要功能包括&#xff1a; 初始化&#xff1a;设置引脚模式、初始化编码器、舵机和EEPROM。按键检测&#xff1a;处理按钮的单击、双击和长按事件&#xff0c;并根据事件执行相应操作。编码器更新&#xff…...

【深度学习入门_基础篇】线性代数本质

开坑本部分主要为基础知识复习&#xff0c;新开坑中&#xff0c;学习记录自用。 学习目标&#xff1a; 熟悉向量、线性组合、线性变换、基变换、矩阵运算、逆函数、秩、列空间、零空间、范式、特征指、特征向量等含义与应用。 强烈推荐此视频&#xff1a; 【官方双语/合集】…...

047_小驰私房菜_Qcom 8系列,Jpeg GPU 旋转

【问题背景】 横屏模式下&#xff0c;发现有些三方app拍照旋转了90度。 【修改策略】 adb shell setprop endor.debug.camera.overrideGPURotationUsecase 1 或者在/vendor/etc/camera/camxoverridesettings.txt 里面添加如下内容 overrideGPURotationUsecase1 【解释】 Ga…...

Elasticsearch 操作文档对数据的增删改查操作 索引库文档 操作数据 CRUD

介绍 在 Elasticsearch 中&#xff0c;文档的增、删、改、查操作是核心的基本功能。Elasticsearch 使用 RESTful API 提供这些操作&#xff0c;通常通过 HTTP 请求与 Elasticsearch 集群进行交互。 索引库 {"mappings": {"properties": {"title&qu…...

在rocky linux 9.5上在线安装 docker

前面是指南&#xff0c;后面是日志 sudo dnf config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo sudo dnf install docker-ce docker-ce-cli containerd.io -y docker version sudo systemctl start docker sudo systemctl status docker …...

SpringBoot+uniapp 的 Champion 俱乐部微信小程序设计与实现,论文初版实现

摘要 本论文旨在设计并实现基于 SpringBoot 和 uniapp 的 Champion 俱乐部微信小程序&#xff0c;以满足俱乐部线上活动推广、会员管理、社交互动等需求。通过 SpringBoot 搭建后端服务&#xff0c;提供稳定高效的数据处理与业务逻辑支持&#xff1b;利用 uniapp 实现跨平台前…...

LLM基础1_语言模型如何处理文本

基于GitHub项目&#xff1a;https://github.com/datawhalechina/llms-from-scratch-cn 工具介绍 tiktoken&#xff1a;OpenAI开发的专业"分词器" torch&#xff1a;Facebook开发的强力计算引擎&#xff0c;相当于超级计算器 理解词嵌入&#xff1a;给词语画"…...

Android15默认授权浮窗权限

我们经常有那种需求&#xff0c;客户需要定制的apk集成在ROM中&#xff0c;并且默认授予其【显示在其他应用的上层】权限&#xff0c;也就是我们常说的浮窗权限&#xff0c;那么我们就可以通过以下方法在wms、ams等系统服务的systemReady()方法中调用即可实现预置应用默认授权浮…...

[Java恶补day16] 238.除自身以外数组的乘积

给你一个整数数组 nums&#xff0c;返回 数组 answer &#xff0c;其中 answer[i] 等于 nums 中除 nums[i] 之外其余各元素的乘积 。 题目数据 保证 数组 nums之中任意元素的全部前缀元素和后缀的乘积都在 32 位 整数范围内。 请 不要使用除法&#xff0c;且在 O(n) 时间复杂度…...

网络编程(UDP编程)

思维导图 UDP基础编程&#xff08;单播&#xff09; 1.流程图 服务器&#xff1a;短信的接收方 创建套接字 (socket)-----------------------------------------》有手机指定网络信息-----------------------------------------------》有号码绑定套接字 (bind)--------------…...

学习STC51单片机32(芯片为STC89C52RCRC)OLED显示屏2

每日一言 今天的每一份坚持&#xff0c;都是在为未来积攒底气。 案例&#xff1a;OLED显示一个A 这边观察到一个点&#xff0c;怎么雪花了就是都是乱七八糟的占满了屏幕。。 解释 &#xff1a; 如果代码里信号切换太快&#xff08;比如 SDA 刚变&#xff0c;SCL 立刻变&#…...

Docker 本地安装 mysql 数据库

Docker: Accelerated Container Application Development 下载对应操作系统版本的 docker &#xff1b;并安装。 基础操作不再赘述。 打开 macOS 终端&#xff0c;开始 docker 安装mysql之旅 第一步 docker search mysql 》〉docker search mysql NAME DE…...

AGain DB和倍数增益的关系

我在设置一款索尼CMOS芯片时&#xff0c;Again增益0db变化为6DB&#xff0c;画面的变化只有2倍DN的增益&#xff0c;比如10变为20。 这与dB和线性增益的关系以及传感器处理流程有关。以下是具体原因分析&#xff1a; 1. dB与线性增益的换算关系 6dB对应的理论线性增益应为&…...

MySQL JOIN 表过多的优化思路

当 MySQL 查询涉及大量表 JOIN 时&#xff0c;性能会显著下降。以下是优化思路和简易实现方法&#xff1a; 一、核心优化思路 减少 JOIN 数量 数据冗余&#xff1a;添加必要的冗余字段&#xff08;如订单表直接存储用户名&#xff09;合并表&#xff1a;将频繁关联的小表合并成…...