龙空技术网

利用转置函数来处理多维数组

VBA语言専攻 217

前言:

现时朋友们对“多维数组怎么赋值”可能比较着重,兄弟们都想要知道一些“多维数组怎么赋值”的相关知识。那么小编同时在网摘上收集了一些关于“多维数组怎么赋值””的相关文章,希望同学们能喜欢,看官们快快来了解一下吧!

一步很短,一生很长。一步近在脚下,一生难于描画。每一步都刻满一生的选择,每一步都关及一生的希望。抬头需要底气,只有昂首前行,相信自己,不退缩,不逃避,不懈怠,不轻言放弃,坚持到最后,才有资格迈进成功的大门。内心不乱,外界就很难改变你什么。不要艳羡他人,不要输掉自己。坦然清澈,豁然容纳,对着阳光微笑;与自然一起美丽。看庭前花开花落,宠辱不惊。静下心,为后疫情时代做知识的储备,后疫情时代将演绎一场战胜萧条的战役。无论怎样,我们一定要坚信,疫情终将会过去,曙光一定会到来。困难时,留一半是因果;得意时,留一半是慈悲。做了什么,就会收获什么。后疫情时代将会是一个全新的世界,很多理念都将被打破,大多数人不会再享受体制内的保护,对于我们每个人,要尽可能多的学习有用的知识,为自己充电。在今后更加严峻的存量残杀世界中,为自己的生存进行知识的储备,特别是新知识的储备。为后疫情时代做的必要准备。

什么是存量残杀?简单而言,在取代OFFICE新的办公软件没有到来之前,谁能把应用做到最为先进,谁就是王者。其中登峰至极的技能非VBA莫属!

今日继续和大家分享VBA编程中常用的常用"积木"过程代码。这些内容大多是我的经验的记录,来源于我多年的经验。最近代码多是出自"VBA数组与字典解决方案"教程,有一些朋友反映分享的内容不能很好的理解,可以参考这套资料的内容进行研读。今日分享的是第260集。

VBA过程代码261:利用转置函数处理多维数组的方法

Sub MyNZ ()

Dim cnADO, rsADO As Object

Dim strPath, strSQL As String

Dim myData() As Variant

Dim myTitle() As Variant

Worksheets("36").Select

Cells.ClearContents

Set cnADO = CreateObject("ADODB.Connection")

Set rsADO = CreateObject("ADODB.Recordset")

strPath = ThisWorkbook.FullName

cnADO.Open "provider=Microsoft.ACE.OLEDB.12.0;extended properties='excel 12.0;hdr=yes;imex=1';" _

& "data source=" & strPath

strSQL = "SELECT * FROM [数据7$]"

rsADO.Open strSQL, cnADO, 1, 3

myTitle = Array("员工编号", "姓名", "年龄")

myData = rsADO.GetRows(-1, 1, myTitle)

Range("a1:C1") = myTitle

Range("a2").Resize(UBound(myData, 2) + 1, UBound(myData) + 1) = Application.Transpose(myData)

rsADO.Close

cnADO.Close

Set rsADO = Nothing

Set cnADO = Nothing

End Sub

代码解析:上述的过程中首先打开一个用ADO连接,然后打开记录集,并将记录集赋值给数组,最后在工作表中还原数组; myTitle = Array("员工编号", "姓名", "年龄"),myData = rsADO.GetRows(-1, 1, myTitle);上述语句中在记录集中按myTitle数组的格式,讲记录集赋值给myData,要注意的是myData要是变体变量;Range("a2").Resize(UBound(myData, 2) + 1, UBound(myData) + 1) = Application.Transpose(myData);语句中UBound(myData, 2) 获得myData的第2维数的最大数值;UBound(myData) 获得myData的第1维数的最大数值.用Resize()函数扩展了工作表区域;Transpose(myData)将数组myData转置后填入区域。

VBA是利用OFFICE实现自己小型办公自动化的有效手段,我根据自己20多年的VBA实际利用经验,现在推出了四部VBA经验学习资料,是我"积木编程"思想的体现。

第一:VBA代码解决方案,是VBA中各个知识点的讲解,覆盖了绝大多数的知识点;

第二:VBA数据库解决方案,是数据处理的专业利器,介绍利用ADO连接ACCDB,EXCEL。

第三:VBA数组与字典解决方案,讲解VBA中的数组和字典的利用。

第四:VBA代码解决方案之视频,是专门面向初学者的视频讲解,可以快速入门,更快的掌握这门技能。

目前正在写第五部教程:VBA中类的解读和利用,希望在年内能陆续在各个平台和大家见面,前些时在平台上发表了一事件响应的视频录屏,反响还是不错的,这个视频就是类的应用经典。

VBA真的非常实用,希望大家掌握这个工具,利用这个工具,让自己在工作中轻松,高效,快乐。学习有用的知识,让健康的知识服务于大众,不要想不劳而获,更不要去偷奸取巧,踏踏实实,沉下心,提高自己,为后疫情时代做好知识的储备。我的目的就是授人以渔,给大家提供我现成的经验,你不偷着乐还更待何时?

标签: #多维数组怎么赋值