Excel一维数组转二维数组的方法

excel使用技巧大全在前面我们已经讲过,读取数组中的数据都是连续的。但有时,一些数据是不连续的。这时我们应该怎么办呢?

例如,许多格式相同的sheet要合并在一起。我们想看每一个sheet的数据。此时,我们经常是以行为单位,一行一行的去读取,所以数组实际上是一维数组,经过后期处理后,我们把它转换成一个二维数组输出。

我们看个简单的例子:

Sub test()

Dim arr1, arr2, arr3

arr1 = [a2:b4]

arr2 = Array(Array('A001', 100), Array('A002', 200), Array('A003', 300))

arr3 = Application.Transpose(Application.Transpose(arr2))

End Sub

结果如下:

展开剩余55%

这时我们看到的是二维数组。

运行第2段代码后得到的结果:

我们看到的结果是1维数组,不是2维数组,而1维数组里的每个元素都有2个元素。

将ARR2转置2次后就能得到一个2维数组(ARR3):

实际案例运用如下:

上面我们看到,需要合并同一格式的三个表。我们将每个表中的每个数组直接写入一个新的数组,然后在转置2次之后输出它以获得汇总数据。代码如下:

(0)

相关推荐

  • Excel公式练习99:二维数组转换成一维数组

    excelperfect 引言:本文的练习整理自chandoo.org.多一些练习,想想自己怎么解决问题,看看别人又是怎样解决的,能够快速提高Excel公式编写水平. 本次的练习是:如下图1所示,2行 ...

  • 动态内存分配连续内存空间的二维数组

    可以直接使用一维数组来模拟二维数组,下面的代码就是在此基础上,用一个二级指针指向一维数组的相应地方,详见代码 #include <stdio.h> #include <malloc. ...

  • 【原创】VBA学习笔记(12)VBA的数组 array

    一 数组 array 1.1 什么是数组?具体的例子 以这个语句为例子 arr1=array(1, 2, 3) 左边:变量名=数组名 右边:数组,集合,多个元素集合,多个数据集合, 右边的单个内容,1 ...

  • 数组运算5(一维数组与二维数组的运算)

    之前我们说了一维数组与一维数组的运算,二维数组与二维数组的运算,今天来说一维数组与二维数组的运算. -01- 运算规则 1.行数或列数相同的一维数组与二维数组的运算 如下图所示,是一维区域与二维区域的 ...

  • c++指针数组与二维数组的最大区别

    下面随笔是关于指针数组说明及与二维数组的最大区别. 指针数组 数组的元素是指针型 例 利用指针数组存放矩阵 1 #include 2 using namespace std; 3 int main() ...

  • 数组运算4(二维数组与二维数组的运算)

    接着来说数组的运算,今天是二维数组与二维数组的运算. -01- 运算规则 1.尺寸相同的二维数组的运算. 如下图所示,将2个二维区域进行相加运算,结果输出到黄色区域.可以看到它们的运算规则也是一一对应 ...

  • 再多规范抵不过老板一句话,Excel一维表转二维,没有比PQ更合适

    正所谓有人辞官归故里,有人星夜赶科考.千叮万嘱写了各种教程让大家一定要注意源数据表的规范化设计,首要一点就是必须创建一维表,但现实工作中,领导的要求高于一切. 那么今天的教程,就是一个读者求助的如何将 ...

  • VB中怎样对一个二维数组的行进行操作

    通常,数学上的行列式或者矩阵,用二维数组来存放数据,二维数组的第1维,就是映射矩阵的行,二维数组的第2维,就是映射矩阵的列. 例如: dim d(1 To 3,1 To 4) As Integer 对 ...

  • 如何将二维数组作为函数的参数传递

    今天写程序的时候要用到二维数组作参数传给一个函数,我发现将二维数组作参数进行传递还不是想象得那么简单里,但是最后我也解决了遇到的问题,所以这篇文章主要介绍如何处理二维数组当作参数传递的情况,希望大家不 ...

  • 假设客车的座位数是9行4列,使用二维数组在控制台应用程序中实现简单的客车售票系统。

    具体要求为: 使用一个二维数组记录客车售票系统中的所有座位号,并在每个座位号上都显示有票,然后用户输入一个坐标位置,按Enter键,即可将该座位号显示为已售. 首先我定义的输入格式为:1,2 个人认为 ...