Excel精英培训网

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

[已解决]代码运行错误13 类型不配怎么修改代码

[复制链接]
发表于 2014-4-17 21:19 | 显示全部楼层 |阅读模式
本帖最后由 jsdtxin 于 2014-4-17 22:09 编辑

代码如下: 图片20140417.jpg
.........

                    arrb(n, m) = arrb(n, m) + arra(j, m)

              .........

诚请老师帮忙
最佳答案
2014-4-17 21:39
Val(arrb(n, m) )+ val(arra(j, m))

发表于 2014-4-17 21:35 | 显示全部楼层
类型不匹配有可能是 数字+文本 了,在程序出错暂时时,你把光标放在上面,看看两个值是什么
回复

使用道具 举报

 楼主| 发表于 2014-4-17 21:35 | 显示全部楼层
兰色幻想 发表于 2014-4-17 21:35
类型不匹配有可能是 数字+文本 了,在程序出错暂时时,你把光标放在上面,看看两个值是什么

应该是数字和文本的问题,但我不会修改代码,
回复

使用道具 举报

发表于 2014-4-17 21:38 | 显示全部楼层
估计是你的原数据中有非数字数据,包括字母、汉字、空格等内容,你要是找不到就上附件。
另外你这代码有问题,如果arra(j, 1) = arra(i, 1) And arra(j, 2) = arra(i, 2)符合条件,那么之前的arrb(n, m) = arra(i, m)就会被覆盖掉,或者你是真要覆盖掉那不如把这个if放到m的循环前面,先判断符不符合条件,根据条件来写入arrb(n, m) ,这样你就少循环一个m
回复

使用道具 举报

发表于 2014-4-17 21:39 | 显示全部楼层    本楼为最佳答案   
Val(arrb(n, m) )+ val(arra(j, m))

回复

使用道具 举报

 楼主| 发表于 2014-4-17 21:44 | 显示全部楼层
兰色幻想 发表于 2014-4-17 21:35
类型不匹配有可能是 数字+文本 了,在程序出错暂时时,你把光标放在上面,看看两个值是什么

arrb(n, m) = arrb(n, m) + arra(j, m)

前面两个是0,后面一个显示  “”


回复

使用道具 举报

 楼主| 发表于 2014-4-17 21:49 | 显示全部楼层
兰色幻想 发表于 2014-4-17 21:39
Val(arrb(n, m) )+ val(arra(j, m))

arrb(n, m) = Val(arrb(n, m)) + Val(arra(j, m))

超版,是改成上面这样吗?等于号左边要不要改?
回复

使用道具 举报

 楼主| 发表于 2014-4-17 21:55 | 显示全部楼层
FnG 发表于 2014-4-17 21:38
估计是你的原数据中有非数字数据,包括字母、汉字、空格等内容,你要是找不到就上附件。
另外你这代码有问 ...

是的,有字母汉字数字还可能会有空格,原表要求F,G 列完全同名就合并数据,我用兰版刚才的方法改了下能正常运行了。就是不知道你说的问题以后会不会出现。代码是别人帮我写的,我不懂。
回复

使用道具 举报

发表于 2014-4-17 21:57 | 显示全部楼层
左边不用修改
回复

使用道具 举报

发表于 2014-4-17 22:03 | 显示全部楼层
jsdtxin 发表于 2014-4-17 21:55
是的,有字母汉字数字还可能会有空格,原表要求F,G 列完全同名就合并数据,我用兰版刚才的方法改了下能正 ...

看了你的说明再看代码才发现是我看错了,你的代码没问题,arrb(n, m) = arrb(n, m) + arra(j, m)我看成arrb(n, m) = arra(n, m) + arra(j, m), 既然没问题那你的问题就解决了,记得评兰版最佳哦。
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-5-4 18:02 , Processed in 0.402570 second(s), 10 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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