Excel精英培训网

 找回密码
 注册
数据透视表40+个常用小技巧,让你一次学会!
查看: 6468|回复: 12

[已解决]数组可以相除吗??

[复制链接]
发表于 2013-6-12 19:06 | 显示全部楼层 |阅读模式
本帖最后由 北漂的猪 于 2013-6-12 19:08 编辑

已知两个数组,想得到第三个
例如
arr1=array(5,2,6)
arr2=array(1,1,2)
想得到对应相加的arr3 即5,2,3
请问该怎么做

最佳答案
2013-7-3 05:55
本帖最后由 ligh1298 于 2013-7-3 06:03 编辑

'请再测试
  1. Sub 数组相除()
  2.     Dim arr1(), arr2(), arr3()
  3.     Dim i As Byte
  4.     arr1 = Array(5, 2, 6)
  5.     arr2 = Array(1, 1, 2)
  6.     ReDim Preserve arr3(0 To 2)
  7.     For i = 0 To UBound(arr1)
  8.         arr3(i) = arr1(i) / arr2(i)
  9.     Next
  10.     Cells(1, 1).Resize(3) = Application.Transpose(arr3)
  11. End Sub
复制代码
excel精英培训的微信平台,每天都会发送excel学习教程和资料。扫一扫明天就可以收到新教程
发表于 2013-6-12 19:13 | 显示全部楼层
感觉要用循环才行:
for i=1to 3
arr3(i)=arr1(i)/arr2(i)
next
回复

使用道具 举报

发表于 2013-6-12 19:53 | 显示全部楼层
经本人测试,你的想法是好的,实际是行不通的
回复

使用道具 举报

发表于 2013-6-12 20:40 | 显示全部楼层
得用循环,这点处理上,不像在工作表里,可以加,乘。
回复

使用道具 举报

发表于 2013-6-12 20:55 | 显示全部楼层
  1. Sub tst()
  2.     Dim arr1, arr2, arr3
  3.     Dim i As Byte
  4.     arr1 = Array(5, 2, 6)
  5.     arr2 = Array(1, 1, 2)
  6.     arr3 = arr1
  7.     For i = LBound(arr1) To UBound(arr1)
  8.         arr3(i) = arr1(i) / arr2(i)
  9.     Next
  10. End Sub
复制代码
回复

使用道具 举报

发表于 2013-6-12 20:58 | 显示全部楼层
  1. Sub tst()
  2.     Dim arr1(), arr2(), arr3()
  3.     Dim i As Byte
  4.     arr1 = Array(5, 2, 6)
  5.     arr2 = Array(1, 1, 2)
  6.     arr3 = arr1
  7.     For i = LBound(arr1) To UBound(arr1)
  8.         arr3(i) = arr1(i) / arr2(i)
  9.     Next
  10. End Sub
复制代码

评分

参与人数 1 +12 收起 理由
1091126096 + 12

查看全部评分

回复

使用道具 举报

发表于 2013-6-12 21:08 | 显示全部楼层
a = [{5,2,6} /{ 1,1,2}]  
回复

使用道具 举报

发表于 2013-6-12 21:20 | 显示全部楼层
arr1 = Array(5, 2, 6)
arr2 = Array(1, 1, 2)
arr3 = Evaluate("{" & Join(arr1, ",") & "}/{" & Join(arr2, ",") & "}")
回复

使用道具 举报

 楼主| 发表于 2013-6-15 20:29 | 显示全部楼层
上清宫主 发表于 2013-6-12 21:20
arr1 = Array(5, 2, 6)
arr2 = Array(1, 1, 2)
arr3 = Evaluate("{" & Join(arr1, ",") & "}/{" & Join(a ...

Cells(1, 1).Resize(3) = (arr3)
经过测试,得出3个5, 5 ,5

点评

测都测不来。这样的话把,改成;吧  发表于 2013-6-16 10:50
回复

使用道具 举报

 楼主| 发表于 2013-6-15 20:30 | 显示全部楼层
hwc2ycy 发表于 2013-6-12 20:58

Cells(1, 1).Resize(3) = (arr3)
经过测试,得出3个5, 5 ,5
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|Excel精英培训 ( 豫ICP备11015029号 )

GMT+8, 2024-4-28 09:46 , Processed in 0.341328 second(s), 14 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表