vba 方法和数据成员未找到_VBA基础知识,数据装入数组的方法,currentregion方法最简单...
眼下"人工智能"是一个非常火的词,在抖音上,Phython编程也是被各路网培炒得火热,当然Phython也是有这个实力的.但在Excel里,在VBA里,我们依然可以实现很多很"炫酷"的功能.
这一次短图文,咱们就来说一说VBA里"数组"的事.当然,咱们说得也比较简单,仅仅聊一下自己的一点经验与看法.
1,何谓"数组"?
VBA里,所谓"数组",咱们可以理解为一种数据阵列,或者叫做数据矩阵,数组一定是成行成列出现的.
在这里,咱们得多说一点内容,数组是没有格式的,只有数据,而且,数组只是出现在内存里的,也正是因为如此,所以,要想通过"数组"的方式进行相关的计算,我们就必须把"数组"装入内存,然后再根据我们的需要进行计算,计算完成后,再根据我们的需要输出在工作表里.
如果实在对数组理解不了的话,我们可以把一个工作表里的成行成列的数据先姑且看成是数组.总之,数组就是装入内存里的成行成列的数据.
![](/assets/blank.gif)
![](/assets/blank.gif)
2.数据装入内存.
VBA里,要想使用数组这个方式来处理数据,我们必须先把数据先装入数组,否则,不可得也!
那么,如何把数据装入数组呢?
arr=sheets("数据表").range("a1").CurrentRegion.value
代码解释:把名称为"数据表"的sheet表里的数据以单元格"A1"为左上角的顶点装入数组arr里.使用这种方式是把数据装入数组的最简单的方法.当然,这并不是唯一的方法.
![](/assets/blank.gif)
3.数组计算.
在工作表里,我们所能进行的加减乘除的计算,在数组里,我们依然可以进行,而且速度更捷一些.对于数组而言,"数组+VBA字典"的方法实现多字段的数据汇总一定是用得最多的.对于VBA使用得多的小伙伴来说,我想下面一段代码,你一定见过:
xm=year(arr(i,3)) & month(arr(i,3)) & arr(i,4)
d(xm)=d(xm)+arr(i,6)
或者d(xm)=arr(i,6),
或者d(xm)="",
或者d(xm)=d(xm) &arr(i,6).
这一段代码就是数组与字典结合实现多字段求和的标准表达式.其中xm就是用来计算的字段,在这里我们可以理解为"计算的标准",即符合以上的条件的行的数据进行求和.而arr(i,6)则告诉我们是对哪一列的数据进行求和.
上述几种不同的运算公式代表的是不同的需求.第一个是求和;第二个是提取字段所对应的值,已经确定是一个字段仅对应一个;第三个是提取字段,使字段所对应的值为空;第四个是进行字符的连接,一般欲通过字段长度来进行判断时用此表达式多一些.
![](/assets/blank.gif)
4.数组的输出.
数组的输出肯定是根据我们的实际需要来进行输出的,VBA代码仅一句即可:
.range("a1").resize(ubound(arr),ubound(arr,2))=arr
说明:ubound(arr)是数组的行数的表达式,ubound(arr,2)是数组的列数的表达式.意思是以当前的工作表的"A1"单元格为顶点,以ubound(arr)为行数,ubound(arr,2)为列数输出arr内容.
以上内容是个人在数组的应用过程中的一些经验之谈,想学习VBA的朋友可以多了解一些,说不定在日后的工作过程用得着.
vba 方法和数据成员未找到_VBA基础知识,数据装入数组的方法,currentregion方法最简单...相关推荐
- JNI学习开始篇 基础知识 数据映射及学习资料收集
JNI学习开始篇 基础知识 数据映射及学习资料收集 JNI介绍 JNI(Java Native Interface) ,Java本地接口. 用Java去调用其他语言编写的程序,比如C或C++. JNI ...
- 网络基础知识 快速计算子网掩码的2种方法
网络基础知识 快速计算子网掩码的2种方法<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office ...
- 大数据入门第一课 Hadoop基础知识与电商网站日志数据分析
大数据入门第一课 Hadoop基础知识与电商网站日志数据分析 本课程从Hadoop核心技术入手,以电商项目为依托,带领你从0基础开始上手,逐步掌握大数据核心技术(如:HDFS.YARN.MapRedu ...
- 史上最坑的证书报错解决方法:Code=3000 未找到应用程序的“aps-environment”的权利字符串
在ios注册远程通知获取设备令牌token的时候 //注册远程通知获取设备令牌toKen [[UIApplication sharedApplication] registerForRemoteNot ...
- Nginx启动不了报错未找到命令的解决方法(- bash: nginx: 未找到命令)
故障现象 nginx stop - bash: nginx: 未找到命令 解决方法 1,打开环境变量所在的文件 vim /etc/profile 2,在profile文件末尾,加上一行 用来指向你的n ...
- 1023day5:class类属性方法、每次执行类属性+1、内建模块、时间装饰器wrapper、面向对象__slots__方法:限制类的属性等基础知识、正则表达式基础知识、多态鸭子类型
文章目录 一.类class 1.Python类class 属性 方法 2.类的构造方法__init__() 3.每次执行一次类的属性+1 二.模块 1.内建模块 2.第三方模块 3.定义自己的模块 三 ...
- 未掌握的基础知识之HTML+CSS
HTML基础知识整理 HTML canvas HTML5相关的框架或类库 DHTML 的动态样式的作用 超链接样式顺序 HTML5新增的表单元素 HTML5中新增的属性 块级元素 行内元素 常见的块级 ...
- Jquery源码中的Javascript基础知识(四)— jQuery.fn.init方法
$() 即调用了jQuery.fn.init方法 jQuery = function( selector, context ) {return new jQuery.fn.init( selector ...
- 大数据和hadoop的一些基础知识
一.前言 大数据这个概念不用我提大家也听过很多了,前几年各种公开论坛.会议等场合言必及大数据,说出来显得很时髦似的.有意思的是最近拥有这个待遇的名词是"人工智能/AI",当然这是后 ...
最新文章
- 在AFN中使用NSXMLParser解析服务器返回的XML数据
- 在用户线程/主线程中推荐MsgWaitForMultipleObjects代替WaitForSingleObject和WaitForMultipleObjects()函数
- Cascading——针对Hadoop MapReduce的数据处理API
- 谈Apache OFbiz 会员模块表结构设计
- 计算机入门模拟试题abcd,计算机一级计算机基础及WPSOffice应用考前模拟试题及答案(7)...
- 当爬虫工程师遇到 CTF丨2021 年 B 站 1024 安全攻防题解
- 6万人同时离场,竟然一点都不挤?原来用了这个神器
- Hive之函数与自定义函数
- php获取当前域名、主机、URL、端口、参数、网址、路径、代理等
- sql入门基础知识分享
- 这12道经典性能测试人员面试题,你都见过哪几道?(下)
- c语言通过定义变量实现对,C语言中定义变量“#X”,X##, ##X 和“##X##”用意
- C++之lock_guard和unique_lock自动加解锁区别
- 苹果在中国的审核规律探索二
- java制作游戏开始界面,太香了
- 美图秀秀java代码,【Java】SpringMvc整合美图秀秀M4(头像编辑器)
- 第十章 VLAN间路由
- MIT JOS lab2内存管理实验记录
- 《经济半小时》 20130906 指尖上的商机(五)数据时代
- 【矩阵论】04——线性空间——子空间