首页 > 其他分享 >VBA-Excel数组应用

VBA-Excel数组应用

时间:2023-12-06 14:56:10浏览次数:32  
标签:Dim VBA 创建 Excel arr 数组 UBound LBound

1)数组创建
A类:动态数组
Dim arr ()     创建一个动态变量数组,不受长度/数据类型受制
B类:静态数组
Dim arr(5)  as string    创建一个一维数组,下标从0开始,最大下标值为5
Dim arr(3,3) as Integer 创建一个二维数组,开始arr(0,0),最后一个arr(3,3)
Dim arr=array(1, 2, 3) 创建一个一维数组,固定长度3,值为1,2,3
Dim arr (0 to 4,0 to 5) as intege 创建一个二维数组,开始arr(0,0),最后一个arr(4,5)

2)重置数组长度ReDim
动态数据就一定需要redim,静态数组就不要再redim
ReDim arr(0 To 5, 0 To 6)  将动态数组arr重置为arr(5,6) 二维数动态组
 


2)数组指定位置赋值
默认将数组的第一个成员设置为0(索引号),因此,数字1代表数组中的第二个成员,而数字2则代表第三个
arr (index) =122121

 

3)通过Array函数批量
arr=Array("red","yellow","blue","black")

4)成员最大索引位置(UBound)
UBound(数组名,[第n维])
第n维是可选项,默认值 为 1 ,将返回最大下标

UBound 为 Visual Basic 中的一个函数,用来返回数组或元素相应维度的最大值。

5)成员最小索引位置(LBound)
(LBound)(数组名,[第n维])
第n维是可选项,默认值 为 1 ,将返回最小下标
同理,LBound函数是获取最小值

 
6)数组转换为字符串
Join(array, 分隔符)
比如:Join(arr, ",")

标签:Dim,VBA,创建,Excel,arr,数组,UBound,LBound
From: https://www.cnblogs.com/Pro-Cyon/p/17879532.html

相关文章

  • VBA-Excel程序控制语法
    1、If…Then语句 SubSayHello1()  IfTime<0.5ThenMsgBox"早上好!"  IfTime>=0.5ThenMsgBox"下午好!"EndSubSubSayHello2()  IfTime<0.5Then    MsgBox"早上好!"  Else    MsgBox"下午好!"  EndIf......
  • DevExpress WinForms Pivot Grid组件,一个类似Excel的数据透视表控件(一)
    界面控件DevExpressWinForms的PivotGrid组件是一个类似Excel的数据透视表控件,用于多维(OLAP)数据分析和跨选项卡报表。众多的布局自定义选项使您可以完全控制其UI,无与伦比的以用户为中心的功能使其易于部署。DevExpressWinForms有180+组件和UI库,能为WindowsForms平台创建具有......
  • 使用ThinkPHP框架根据Excel内容批量处理图片名称详解记录
    ThinkPHP依赖以下环境Nginx+PHP,建议提前装好Composer,PHP、Composer需要设置好系统环境变量。1.通过Composer安装Laravel框架composercreate-projecttopthink/thinkthinkphp6启动服务测试cdthinkphp6phpthinkrun然后就可以在浏览器中访问http://localhost:8000如果不能显示......
  • 稀疏数组 待完善
    packagearray;importjava.util.Arrays;publicclassArrayDemo08{publicstaticvoidmain(String[]args){//1.创建一个二维数组11*110:没有棋子1;黑棋2:白棋int[][]array1=newint[11][11];//二维数组的行数和列数array1[1][2]......
  • excel 循环
    testxlsx=pd.ExcelWriter('test.xlsx')foriinplat_360:forjinrange(0,len(needcolumns)):ifneedcolumns[j]!='省份':table=pd.pivot_table(data_cgm_360_copy_dropdup[data_cgm_360_copy_dropdup.plati],index='等级',columns=needcolum......
  • 秦疆的Java课程笔记:58 数组 冒泡排序
    总共有八大排序,其中冒泡排序无疑是较为出名的排序算法之一。冒泡排序的代码相当简单,两层循环,外层冒泡轮数,里层依次比较。当看到嵌套循环,应该立马意识到,这个算法的时间复杂度是\(O(n^2)\)。冒泡排序基本步骤:比较数组中两个相邻元素,如果第一个数比第二个数大,就交换位置......
  • 秦疆的Java课程笔记:59 数组 稀疏数组
    当一个数组中大部分元素都是0,或者为同一值的数组时,可以使用稀疏数组来保存该数组。稀疏数组的处理方式是:记录数组一共有几行几列,有多少个不同值把具有不同值的元素和行列及值记录在一个小规模的数组中,从而缩小程序的规模publicclassArrayDemo1{publicstaticv......
  • 刷题复习(二)数组-双指针
    刷题复习(二)数组-双指针https://labuladong.gitee.io/algo/di-ling-zh-bfe1b/shuang-zhi-fa4bd/1、删除有序数组中的重复项慢指针用于统计不重复项,快指针用于不停前进对比是否有新的不重复项,有的话进行替换classSolution{publicintremoveDuplicates(int[]nums){......
  • 秦疆的Java课程笔记:56 数组 二维数组
    多维数组可以看成是数组的数组,比如二维数组就是一个特殊的一维数组,其每一个元素都是一个一维数组。秦疆老师表示Java中并不太使用二维以上的多维数组。例如二维数组:inta[][]=newint[2][5],就可以看成是一个两行五列的数组publicclassArrayDemo1{publicstaticv......
  • Excel判断日期是否是工作日的实现(排除节假日,加上补班日)
     实现思路:工作日= 【周一到周五(排除节假日)或者补班日】公式编写:1.周一到周五判断WEEKDAY(A2,2) 获取该日期是星期几(返回:1-7),那么周一到周五就是<62.非节假日判断COUNTIF($G$2:$G$398,A2)=0统计该日期在指定区域$G$2:$G$398中出现的次数,非节假日就是未出现,出现......