乔山办公网我们一直在努力
您的位置:乔山办公网 > excel表格制作 > <em>VBA</em>如何用二维数组给单元格赋值?

<em>VBA</em>如何用二维数组给单元格赋值?

作者:乔山办公网日期:

返回目录:excel表格制作


示例:
$array = array();
$item = array();
$item['id'] = 1;
$item['xuefei'] = '50w';
$array[] = $item;

这三行
$item = array();
$item['id'] = 1;
$item['xuefei'] = '50w';

等效于 $item = array('id' => 1, 'xuefei' => '50w');

在php中,对于数组可以直接使用$array[]的方法在其尾部追加一个元素。例如
$array = array();
$array[] = 1;
结果为
Array (
0 => 1

)

可以用Resize来实现,示例如下zd
arr=range("A1:Z1")'将第一行,A到Z列,赋值给数组arr

range("A2").resize(ubound(arr),1)=application.transpose(arr)'将数组Arr转置后,赋予A2开始的A列中。

关于Resize属性:

调整指定区域的大小。返回 Range对象,该对象代表调整后的区域。
expression.Resize(RowSize, ColumnSize)
expression 必需。该表达式返回要调整大小的 Range对象。
RowSize Variant 类型,可选。新区域中的行数。如果省略该参数,则该区域中的行数保持不变。
ColumnSize Variant类型,可选。新区域中的列数。如果省略该参数。则该区域中的列数保持不变。
Sub ff()
    Dim arr(1 To 2, 1 To 3)
        arr(1, 1) = 11
        arr(1, 2) = 12
        arr(1, 3) = 13
        arr(2, 1) = 14
        arr(2, 2) = 15
        arr(2, 3) = 16
    Cells(1, 1).Resize(UBound(arr(), 1), UBound(arr(), 2)) = arr
End Sub

写个例子应该就明白了。利用resize



array函数只能对一维数组赋值。
定义二维数组可用 Dim和redim
赋值,如果数据有规律,可用循环,否则只能一个一个赋值

相关阅读

关键词不能为空

ppt怎么做_excel表格制作_office365_word文档_365办公网