字典与数组第七讲:工作表数据计算时为什么要采用数组公式(一)

news2024/12/29 8:47:09

《VBA数组与字典方案》教程(10144533)是我推出的第三套教程,目前已经是第二版修订了。这套教程定位于中级,字典是VBA的精华,我要求学员必学。7.1.3.9教程和手册掌握后,可以解决大多数工作中遇到的实际问题。

这套字典教程共两册,一共八十四讲,今后一段时间会给大家陆续推出修订后的教程内容。今日的内容是:字典与数组第七讲:工作表数据计算时为什么要采用数组公式(一)

a3389cebf83635df37093eb90b2d4d0e.jpeg

【分享成果,随喜正能量】无人问津也好,技不如人也罢,你都要试着安静下来,去做自己该做的事情,而不是让烦恼和焦虑,毁掉你本就不多的热情和定力。心可以碎,手不能停,该干什么干什么在崩溃中继续前行,这才是一个成年人的素养。。

第七讲 工作表数据计算时为什么要采用数组公式(一)

今日继续讲解VBA数组与字典解决方案第7讲,在前几讲的数组应用中我们深入地讲解了工作表数组和数组公式,以及数组维数扩展的意义。那么,有的朋友会问了:这么费事,为什么要引入数组公式呢?换句话说,引用数组公式有什么好处呢?在这一节中我要慢慢地给大家讲解.

首先我们回忆一下小时候上学时有过这么一道题:求1 到100 的和。当然也可以是1000、10000 甚至更多。怎么解决这类问题呢?

问题分析:求1 到100 的和,答案是5050,但如果采用Excel计算,你必须要告诉它如何计算,计算从1 到100 的和,实际上就是计算1+2+3+4+……+98+99+100,好了,答案出来了。

1最原始的处理方案

在编辑栏中输入“=sum(1+2+3+4+……+98+99+100)”。相信聪明的你一定对此答案不满意,虽然能得到正确的结果,但很明显不是最好的方法。不仅需要录入的时候小心应对,发费的时间也是不能我们忍受的。

那么有没有更好的办法呢?

2函数公式的利用

要想得到1 到100 的数列,最简单的方法就是使用Row()函数。熟悉Row()函数的朋友一定会恍然大悟:在A1 单元格中输入“=Row()”,使用填充柄填充至A100,看到什么结果?这时每一个单元格中值就是其对应的行数。也就是说Row()表示当前行。

我们先来学习一下ROW()函数;ROW函数:是函数中的一种,作用是返回一个引用的行号。

语法ROW(reference)

参数:Reference 为需要得到其行号的单元格或单元格区域。

特别注意:

1) 如果省略 reference,则假定是对函数 ROW 所在单元格的引用。

2)如果 reference 为一个单元格区域,并且函数 ROW 作为垂直数组输入,则函数 ROW 将 reference 的行号以垂直数组的形式返回。

3) Reference 不能引用多个区域。

13fe877a41a60e0e06aaf8ae0fd6df9b.jpeg

下面我们继续讲解刚才提到的问题,当填充完A1到A100后再求和,求得到了1 到100 的和。

这个方法是不是最好的方法呢?当然不是,我们再看下面方法三

3数组公式的利用

我们可以用Row(1:100)就表示一个数组,其值便是包含第一到第一百行的行号,即1、2、3、……、98、99、100 这些数值,现在我们就把这个数组应用到公式中。

在工作表的任意一个单元格中输入“=sum(Row(1:100))”,然后按Ctrl+Shift+Enter 组合键,你会惊喜的发现,我们要的结果出现了。

79db53bacdce36da31a7726f0665cdd5.jpeg

很容易得出结论:上述的三个方案中第三个是最好的方法。也就是说,引入了数组公式后问题的解决变得非常简单。

今日内容回向:

1 引入数组公式后有什么好处?

2 数组公式是如何使问题变得简单的?

3 你是否理解了row()的含义?

c8f342f4f4db38b9e14ea42a8d1fe305.jpeg

我多年的VBA实践经验,全部浓缩在以下教程中:


41d7022dd6b28ed9a5f5892f71be3a7e.jpeg

3734ed3338047ba3149d13db8b7f217b.jpeg

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1060057.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

个人论坛系统的测试用例

首先要弄清楚论坛系统都具有什么功能,然后对各个功能进行分类编写测试用例。

使用Sen2cor对Sentinel-2辐射定标和大气校正

使用Sen2cor对Sentinel-2辐射定标和大气校正 在上一篇文章中,先对Sen2cor进行了安装 先定位到插件所在文件夹下 cd C:\Users\lenovo\AppData\Local\Sen2Cor-02.11.00-win64如果在上一篇中已经配置好环境变量,那就不用cd定位了,直接输后面的…

经典算法-----八皇后问题

目录 前言 八皇后问题 1.问题简介 1.2思路剖析 1.3递归和回溯 代码实现 ​编辑 1.递归回溯解决 能否放置数组 完整代码: 2.非递归回溯解决 前言 今天我们学习一个新的算法,也就是回溯算法,就以八皇后问题作为示例,这是…

剑指offer——JZ25 合并两个排序的链表 解题思路与具体代码【C++】

一、题目描述与要求 两个链表的第一个公共结点_牛客题霸_牛客网 (nowcoder.com) 题目描述 输入两个无环的单向链表,找出它们的第一个公共结点,如果没有公共节点则返回空。(注意因为传入数据是链表,所以错误测试数据的提示是用其…

C++的对像生存期

栈 栈由操作系统分配管理,也就是它是规整的,内存的大小在申请之后不会发生变化。因此,它不会出现碎片化,并且读取速度非常的快 例如:经常声明的局部变量,一些基本数据类型,如int ,double, char…

力扣 -- 518. 零钱兑换 II(完全背包问题)

解题步骤&#xff1a; 参考代码&#xff1a; 未优化代码&#xff1a; class Solution { public:int change(int amount, vector<int>& coins) {int ncoins.size();//多开一行&#xff0c;多开一列vector<vector<int>> dp(n1,vector<int>(amount1…

LLVM IR 文档 专门解释 LLVM IR

https://llvm.org/docs/LangRef.html#phi-instruction

Linux网络编程:详解https协议

目录 一. https协议概述 二. 中间人截获 三. 常见的加密方法 3.1 对称加密 3.2 非对称加密 四. 数据摘要和数据签名的概念 五. https不同加密方式的安全性的探究 5.1 使用对称加密 5.2 使用非对称加密 5.3 非对称加密和对称加密配合使用 六. CA认证 七. 总结 一.…

JWFD开源工作流大模型设计器

JWFD开源工作流大模型设计器&#xff0c;把流程图的拓扑结构从几十个节点扩展到数千个节点&#xff0c;就不是使用绘图器的模式了&#xff0c;需要开发一个模型生成器了&#xff0c;尝试做一下大模型&#xff0c;赶赶时髦啊

openwrt安装与旁路由 以玩客云为例

鉴于安了wfnb/onecloud 23年的bata版本 结果发现进入docker 连make config apt yum apk curl等命令都没有……而且curl下载很慢 得选6.0哪个版本 反正就是 安不了istore 所以 直接刷人家的成品算了 为什么要使用软路由、旁路由 普通的路由器往往集无线信号转发、网关、DNS 服…

JMeter工具的介绍,安装

一、本文学习目标 1、能知道JMeter的优缺点 2、能掌握JMeter的安装流程 3、能掌握JMeter线程组的设置 4、能掌握JMeter参数化的使用 5、能掌握JMeter直连数据库操作 6、能掌握JMeter的断言. 二、JMeter简介 &#xff08;1&#xff09;Jmeter详细介绍 **JMeter&#xff08;A…

RTC 时间、闹钟

实时时钟RTC是一个独立的定时器。RTC模块拥有一个连续计数的计数器&#xff0c;在软件配置下&#xff0c;可以提供时钟日历的功能。修改计数器的值可以重新设置当前时间和日期 RTC还包含用于管理低功耗模式的自动唤醒单元。 在掉电情况下 RTC仍可以独立运行 只要芯片的备用电源…

MySQL数据库基础回顾与复习

MySQL数据库 一、原理定义概念 定义 数据库(Database)是按照数据结构来组织、存储和管理数据的建立在计算机存储设备上的仓库 数据库是长期储存在计算机内、有组织的、可共享的数据集合 分类&#xff1a; &#xff08;1&#xff09;非结构化数据&#xff1a; 数据相对来讲没…

QFluentWidgets: 基于 C++ Qt 的 Fluent Design 组件库

简介 QFluentWidgets 是一个基于 Qt 的 Fluent Designer 组件库&#xff0c;内置超过 150 个开箱即用的 Fluent Designer 组件&#xff0c;支持亮暗主题无缝切换和自定义主题色。搭配所见即所得的 Fluent Designer 软件&#xff0c;只需拖拖拽拽&#xff0c;不用编写一行 QSS&…

腾讯云服务器简介和使用流程

腾讯云服务器在云服务器CVM或轻量应用服务器页面自定义购买价格比较贵&#xff0c;但是自定义购买云服务器CPU内存带宽配置选择范围广&#xff0c;活动上购买只能选择固定的活动机&#xff0c;选择范围窄&#xff0c;但是云服务器价格便宜比较省钱。腾讯云服务器网来详细说下腾…

driver.js 扩展下次“不再提示”功能

文档地址&#xff1a;https://github.com/kamranahmedse/driver.js 官方demo&#xff1a;https://kamranahmed.info/driver.js/ /*** Title: 页面引导 ……* Author: JackieZheng* Date: 2023-08-16 10:43:31* LastEditTime: 2023-08-16 10:55:08* LastEditors:* Description:*…

找不到msvcp110.dll是什么意思?总结msvcp110.dll丢失修复方法分享

随着电脑技术的不断发展&#xff0c;我们也会遇到各种各样的问题。最近&#xff0c;我就遇到了一个问题&#xff1a;电脑丢失msvcp110.dll的困扰。这个问题让我深感无奈&#xff0c;但同时也让我学到了很多关于电脑维修和系统修复的知识。在这篇文章中&#xff0c;我将分享我的…

前端JavaScript入门到精通,javascript核心进阶ES6语法、API、js高级等基础知识和实战 —— Web APIs(五)

思维导图 Bom操作 一、Window对象 1.1 BOM(浏览器对象模型) <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8"><meta http-equiv"X-UA-Compatible" content"IEedge"><meta name"vi…

macOS Sonoma 正式版系统已发布,macos14值得更新吗

北京时间9月27日macOS Sonoma 正式版系统发布&#xff0c;为 Mac 带来一系列丰富新功能&#xff1a;优化小组件、升级视频会议、沉浸式游戏体验等&#xff0c;最新macos14值得更新吗&#xff1f;这里根据我一个月的试用beta版本体验来分享一下。 我使用的是M1芯片的MacBook air…

Java架构师功能设计和架构设计

目录 1 架构设计理念1.1 架构定义1.2 文档编写1.3 维护和改进1.4 验证实现1.5 总结 2 深入理解和认识架构设计2.1 架构设计关注哪些东西2.2 架构设计是一系列的活动不断演化和完善的过程2.3 架构设计跨越软工的全流程2.3.1 软工的全流程的原因 3 功能设计概念4 理解和认识功能设…