Excel精英培训网

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

[已解决]错误提示:类型不匹配

[复制链接]
发表于 2014-6-26 21:24 | 显示全部楼层 |阅读模式
本帖最后由 linbohen 于 2014-6-26 22:06 编辑

大家看看,这段程序哪里错了。谢谢。

要实现的效果:

从附件《样表》sheet1的数据中筛选出非空格行的数据,生成文本sheet2中b2的格式(种类 数量 斤*价格 元=金额 元……温馨提示:必须在一个单元格内)

同学帮我写了个函数,可出现编译错误,初次接触这个,实在搞不懂。请大家帮忙看看。
最佳答案
2014-6-26 21:48
本帖最后由 我心飞翔410 于 2014-6-26 21:50 编辑
linbohen 发表于 2014-6-26 21:36
这是样表

你的 那个计算区域有文本,所以出错
For mycol = 2 To 500   改改这句就可以了
00.png

样表.rar

9.27 KB, 下载次数: 0

发表于 2014-6-26 21:32 | 显示全部楼层
sheet1和sheet2是保留关键字吧,换一个变量名吧

评分

参与人数 1 +1 收起 理由
linbohen + 1 改了,还是不行

查看全部评分

回复

使用道具 举报

 楼主| 发表于 2014-6-26 21:36 | 显示全部楼层
这是样表

样表.rar

9.27 KB, 下载次数: 2

回复

使用道具 举报

发表于 2014-6-26 21:48 | 显示全部楼层    本楼为最佳答案   
本帖最后由 我心飞翔410 于 2014-6-26 21:50 编辑
linbohen 发表于 2014-6-26 21:36
这是样表

你的 那个计算区域有文本,所以出错
For mycol = 2 To 500   改改这句就可以了

评分

参与人数 2 +7 收起 理由
linbohen + 1 改了,还是老样子。为什么我最多只能评1分?.
ghostjiao + 6 飞翔好快

查看全部评分

回复

使用道具 举报

发表于 2014-6-26 21:50 | 显示全部楼层
你这个函数问题颇多,你想要什么结果?再写一个吧,这个不怎么好...
在表一中错误的原因是cheng = Sheet1.Cells(mycol, 2).Value * Sheet1.Cells(mycol, 3).Value
你的mycol=1的时候,那是2个文本没法相乘

评分

参与人数 1 +1 收起 理由
linbohen + 1 初次接触,这函数也是同学帮忙写的,我自己.

查看全部评分

回复

使用道具 举报

 楼主| 发表于 2014-6-26 22:24 | 显示全部楼层
For mycol = 2 To 500  改完后,返回值错误,调试倒没有出错。
回复

使用道具 举报

 楼主| 发表于 2014-6-26 23:47 | 显示全部楼层
结合楼上两位老师的指点,修改了程序,目前已能正常运行,再次表示感谢。
程序如下:
--------------------------------------------------------------------------------------
Function mingxi()
'每天的出库明细
Dim Sheet1 As Worksheet, Sheet2 As Worksheet
Dim mycol As Integer
Dim cheng As Double
Set Sheet1 = ThisWorkbook.Worksheets(1)
Set Sheet2 = ThisWorkbook.Worksheets(2)
mingxi = " "
For mycol = 2 To 100
If Sheet1.Cells(mycol, 2).Value <> "" Then
cheng = Sheet1.Cells(mycol, 2).Value * Sheet1.Cells(mycol, 3).Value
mingxi = mingxi & " " & Sheet1.Cells(mycol, 1).Value & Sheet1.Cells(mycol, 2).Value & "斤*" & Sheet1.Cells(mycol, 3).Value & "元=" & CStr(cheng) & "元"
'MsgBox (mingxi)
End If
Next mycol
End Function

--------------------------------------------------------------------------------------
回复

使用道具 举报

 楼主| 发表于 2014-6-26 23:59 | 显示全部楼层
若想再扩展下该怎么改呢?是不是要让函数带上参数,以此来实现任意工作表、任意行列的统计?

回复

使用道具 举报

 楼主| 发表于 2014-6-27 08:34 | 显示全部楼层

若想再扩展下该怎么改呢?是不是要让函数带上参数,以此来实现任意工作表、任意行列的统计?
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-5-2 12:38 , Processed in 0.697043 second(s), 17 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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