Exce表格网

vba数组写入多个excel中(vba中如何给数组赋值)

来源:www.0djx.com  时间:2023-03-19 16:40   点击:247  编辑:表格网  手机版

1. vba中如何给数组赋值

"一个数组不能直接给另一个数组赋值,也就是不能brr=arr;但是可以为数组的某个元素复制,比如brr(1,3)=arr(1,3);

另外一个方法是把一个数组一下子赋值给一个变体型变量,比如下面就是合理的:

dimbrr,arr(1to1,1to20)然后给arr各个元素赋值,或者从你的Excel文件中某一区域,一下子读取出来。

然后就可以brr=arr这是可以的,因为brr是变体型。补充:一个数组不能直接给另一个数组赋值,也就是不能brr=arr;但是可以为数组的某个元素赋值,比如brr(1,3)=arr(1,3);

另外一个方法是把一个数组一下子赋值给一个变体型变量,比如下面就是合理的:

dim brr,arr(1 to 1,1 to 20)然后给arr各个元素赋值,或者从你的Excel文件中某一区域,一下子读取出来。

然后就可以brr=arr这是可以的,因为brr是变体型。"

2. vba数组给数组赋值

vba里没有现成的sort方法可以使用,vba里面要对数组进行排序,现有的通常做法:

1.通过单元格赋值以后,利用工作表里的Sort方法进行排序

2.通过SQL实现,也需要调用单元格区域存放数据

3.直接写循环语句通过算法来实现。

3. vba数组赋值给另一个数组

给你举一个代码段的例子,如果你会BASIC,在此基础由解决你的问题就不难了

Dim i, num1

num1 = Sheets("计算").Cells(65536, 1).End(xlUp).Row

'计算 Sheets("计算") A列最后一行数据的位置

For i = 1 To num1

If Sheets("计算").Cells(i, 1)>100 Then Sheets("公布表").Cells(i, 1) = Sheets("计算").Cells(i, 1)

Next i

'当 Sheets("计算")第1列的数据大于100时,自动拷入 Sheets("公布表") 的相应列中

如果你想将Sheets("公布表")中的空格删除,可以这样写

Dim i, num1,k

num1 = Sheets("计算").Cells(65536, 1).End(xlUp).Row

'计算 Sheets("计算") A列最后一行数据的位置

k=1

For i = 1 To num1

If Sheets("计算").Cells(i, 1)>100 Then

Sheets("公布表").Cells(k, 1) = Sheets("计算").Cells(i, 1)

k=k+1

else

k=k

endif

Next i

4. vba往数组添加数据

第一、需要引用microsoftactivexdataobjects2.0或以上版本的控件

第二、你的写法好像有问题

1、赋值我一般会用cells(i,9)=rs("salesnum")

2、或者每个单元格的赋值不用,直接用range("g3").copyfromrecordsetrs这样你的代码从range("g3").select到wend这一部分都可以不要了。

5. vba怎么给数组赋值

一维给二维赋值,参考实例如下:

for (i = 0; i < 10; i++){ for (j = 0; j < max; j++) { scanf("%d", &a[j]); } strncpy(b[i], a, max); //memcpy(b[i], a, max);}二维数组赋值有两种方法,第一种方法是单元格区域装入二维数组,如:Arr=range("a1:b19")就可以把单元格区域的值装入数组arr第二种就是通过循环装入,一个个数值装入。例:向二维数组写入数据和读取;Dim x As Integer, y As IntegerDim arr(1 To 5, 1 To 4)For x = 1 To 5

顶一下
(0)
0%
踩一下
(0)
0%
相关评论
我要评论
用户名: 验证码:点击我更换图片