-
解决VBA运行时错误13 类型不匹配问题
2021-02-04 15:07:25解决VBA运行时错误13 类型不匹配问题 先说解决方法:找到出错的语句以后给里面的参数改类型,使其互相兼容。 比如:给单元格Cells()外面套个马甲 Val() 比如:给数字外面套个马甲Int() 详细的排查过程后面会慢慢讲...解决VBA运行时错误13 类型不匹配问题
先说解决方法:找到出错的语句以后给里面的参数改类型,使其互相兼容。
- 比如:给单元格Cells()外面套个马甲 Val()
- 比如:给数字外面套个马甲Int()
详细的排查过程后面会慢慢讲……这是一个翻转灵异的奇怪问题。
我这边出问题的例子参见杨洋老师的书《深入浅出Excel VBA》第3章,3.2.1节,我原样敲仅VBE里面运行就报错了:
Sub Scores() Dim i For i = 3 To 5 Cells(i, 6) = Cells(i, 3) + Cells(i, 4) + Cells(i, 5) Cells(i, 7) = Cells(i, 6) / 3 '报错就在这一行 Next i End Sub
我试了下,解决方案有二:
- Val(Cells(i, 6)) 也就是给Cells(i, 6) 穿马甲
- 或者, In(3)—— 强调下3不是字符串是整数()
解决归解决,但是要搞清楚之前死在哪里才行,于是我在代码里加了一句显示数据类型的代码
Sub Scores() Dim i For i = 3 To 5 Cells(i, 6) = Cells(i, 3) + Cells(i, 4) + Cells(i, 5) MsgBox MsgBox TypeName(Cells(i, 6)) '让EXCEL给我跳个弹窗看看这单元格里面到底什么数据格式 MsgBox MsgBox TypeName(3) '再看看一个数字3还能是什么形式…… Cells(i, 7) = Cells(i, 6) / 3 Next i End Sub
果然,Cells(i,6)的数据类型不是正常的变量或者整数,而是range
而3就是平平无奇的integer
那么问题来了,Range不能被integer除可以理解,给range套上Val()完全可以理解,variant和一切都搭嘛……但为什么给本来就是integer的3外面套上一层Int()也可以解决问题不再报错呢???看到这里只是一般奇怪哈,更奇怪的是
当我把两条MsgBox代码删掉,想再看看报错效果
然后,竟然不再报错说什么 运行时错误13了
只能风中凌乱………………
-
access 2000 VBA 运行错误“13”,类型不匹配??
2012-01-31 10:11:46运行到最后一步的时候,提示错误 13 求高手解答 是数据库里面的一个时间字段,这个程序是access2.0升级到2000的, 好像是这个UPD_CNT 字段原先是16位 ,现在变成32位,所以报错, 求高手帮忙修改 -
中文版Excel.2007高级VBA编程宝典 1/2
2012-04-06 16:00:165.4.1 快捷但质量不高的电子表格应用程序 5.4.2 自己创作、自己使用的电子表格应用程序 5.4.3 单用户电子表格应用程序 5.4.4 意大利面条式电子表格应用程序 5.4.5 实用电子表格应用程序 5.4.6 包含工作... -
中文版Excel.2007高级VBA编程宝典 2/2
2012-04-06 16:41:385.4.1 快捷但质量不高的电子表格应用程序 5.4.2 自己创作、自己使用的电子表格应用程序 5.4.3 单用户电子表格应用程序 5.4.4 意大利面条式电子表格应用程序 5.4.5 实用电子表格应用程序 5.4.6 包含工作... -
-
Excel2007图表完全剖析 8/8
2012-04-01 10:28:28在Excel 2007中,Microsoft重写了15年来未曾更新的图表引擎,但如果选择的图表类型不正确,将无助于传递要表达的信息。鉴于此,本书将介绍Excel 2007中全新的图表制作界面,更重要的是,将引导读者选择正确的图表... -
Excel2007图表完全剖析 5/8
2012-04-01 10:11:02在Excel 2007中,Microsoft重写了15年来未曾更新的图表引擎,但如果选择的图表类型不正确,将无助于传递要表达的信息。鉴于此,本书将介绍Excel 2007中全新的图表制作界面,更重要的是,将引导读者选择正确的图表... -
Excel2007图表完全剖析 7/8
2012-04-01 10:23:55在Excel 2007中,Microsoft重写了15年来未曾更新的图表引擎,但如果选择的图表类型不正确,将无助于传递要表达的信息。鉴于此,本书将介绍Excel 2007中全新的图表制作界面,更重要的是,将引导读者选择正确的图表... -
Excel2007图表完全剖析 6/8
2012-04-01 10:16:46在Excel 2007中,Microsoft重写了15年来未曾更新的图表引擎,但如果选择的图表类型不正确,将无助于传递要表达的信息。鉴于此,本书将介绍Excel 2007中全新的图表制作界面,更重要的是,将引导读者选择正确的图表... -
Excel2007图表完全剖析 4/8
2012-04-01 10:03:09在Excel 2007中,Microsoft重写了15年来未曾更新的图表引擎,但如果选择的图表类型不正确,将无助于传递要表达的信息。鉴于此,本书将介绍Excel 2007中全新的图表制作界面,更重要的是,将引导读者选择正确的图表... -
Excel2007图表完全剖析 3/8
2012-04-01 09:55:17在Excel 2007中,Microsoft重写了15年来未曾更新的图表引擎,但如果选择的图表类型不正确,将无助于传递要表达的信息。鉴于此,本书将介绍Excel 2007中全新的图表制作界面,更重要的是,将引导读者选择正确的图表... -
Excel2007图表完全剖析 2/8
2012-04-01 09:47:25在Excel 2007中,Microsoft重写了15年来未曾更新的图表引擎,但如果选择的图表类型不正确,将无助于传递要表达的信息。鉴于此,本书将介绍Excel 2007中全新的图表制作界面,更重要的是,将引导读者选择正确的图表... -
Excel2007图表完全剖析 1/8
2012-04-01 09:42:20在Excel 2007中,Microsoft重写了15年来未曾更新的图表引擎,但如果选择的图表类型不正确,将无助于传递要表达的信息。鉴于此,本书将介绍Excel 2007中全新的图表制作界面,更重要的是,将引导读者选择正确的图表... -
勤哲excel服务器2010教程
2018-10-01 22:47:0211.2.4 按行(列)匹配 181 11.2.5 提取上次日报的日期 183 11.2.6 滚动累加 184 11.2.7 总结与思考 185 11.3 同期比 185 11.4 分组小计 185 11.4.1 问题分析 186 11.4.2 建立《辅助表》模板 186 11.4.3 建立《销售... -
Excel百宝箱8.0
2011-06-07 21:32:17【报表分栏工具箱】【删除工资条恢复明细表】【制作工资条】【建立分页小计】【删除分页小计】【建立图片目录】【批量导入图片(精确匹配)】【批量导入图片(模糊匹配)】【批量导入图片到批注】【删除所有图片】... -
FT View SE 5.0用户手册.doc
2012-03-23 21:32:5413 章 设置数据日志 13-1 关于数据模型 13-1 如何使用多个数据日志模型 13-1 步骤概述 13-1 关于数据日志存储格式 13-2 日志文件集 13-2 日志文件集的命名 13-2 ODBC数据库存储格式 13-3 ODBC表的命名 13-3 使用现有... -
EXCEL百宝箱8.0终极版
2011-11-05 16:48:02【批量导入图片(模糊匹配)】:与上一工具基本一致,只是在确定图片名称时可以糊模匹配。即选择“张”可以导入所有姓张的人的照片 【批量导入图片到批注】:批量地将图片导入到批注中,可以自由设定图片显示大小 ... -
MySQL5.1参考手册官方简体中文版
2013-05-10 14:22:1413.4.2. 不能回滚的语句 13.4.3. 会造成隐式提交的语句 13.4.4. SAVEPOINT和ROLLBACK TO SAVEPOINT语法 13.4.5. LOCK TABLES和UNLOCK TABLES语法 13.4.6. SET TRANSACTION语法 13.4.7. XA事务 13.5. 数据库管理语句 ... -
MYSQL中文手册
2013-03-11 21:21:3413. SQL语句语法 13.1. 数据定义语句 13.1.1. ALTER DATABASE语法 13.1.2. ALTER TABLE语法 13.1.3. CREATE DATABASE语法 13.1.4. CREATE INDEX语法 13.1.5. CREATE TABLE语法 13.1.6. DROP DATABASE语法 ... -
Access 2000数据库系统设计(PDF)---001
2006-02-23 15:31:041044.11.2 改变字段数据类型和大小 1054.11.3 改变表之间的关系 1064.12 复制和粘贴表 1074.13 疑难解答 1084.14 现实世界—数据库战略和表战术 108第5章 输入、编辑和验证表中的数据 1105.1 在Access表中输入测试... -
MySQL 5.1参考手册.chm
2011-12-07 13:53:3713.4.2. 不能回滚的语句 13.4.3. 会造成隐式提交的语句 13.4.4. SAVEPOINT和ROLLBACK TO SAVEPOINT语法 13.4.5. LOCK TABLES和UNLOCK TABLES语法 13.4.6. SET TRANSACTION语法 13.4.7. XA事务 13.5. 数据库管理语句 ... -
MySQL 5.1参考手册中文版
2010-04-28 14:11:54目录 前言 1. 一般信息 1.1. 关于本手册 ...13.4.2. 不能回滚的语句 13.4.3. 会造成隐式提交的语句 13.4.4. SAVEPOINT和ROLLBACK TO SAVEPOINT语法 13.4.5. LOCK TABLES和UNLOCK TABLES语法 13.4.6. SET ... -
MySQL 5.1参考手册
2010-04-20 22:02:5013.4.2. 不能回滚的语句 13.4.3. 会造成隐式提交的语句 13.4.4. SAVEPOINT和ROLLBACK TO SAVEPOINT语法 13.4.5. LOCK TABLES和UNLOCK TABLES语法 13.4.6. SET TRANSACTION语法 13.4.7. XA事务 13.5. 数据库管理语句 ... -
MySql官方参考手册 5.1 中文版
2013-10-16 13:47:3113.4.2. 不能回滚的语句 13.4.3. 会造成隐式提交的语句 13.4.4. SAVEPOINT和ROLLBACK TO SAVEPOINT语法 13.4.5. LOCK TABLES和UNLOCK TABLES语法 13.4.6. SET TRANSACTION语法 13.4.7. XA事务 13.5. 数据库管理语句 ... -
mysql官方中文参考手册
2009-04-11 11:59:1813.4.2. 不能回滚的语句 13.4.3. 会造成隐式提交的语句 13.4.4. SAVEPOINT和ROLLBACK TO SAVEPOINT语法 13.4.5. LOCK TABLES和UNLOCK TABLES语法 13.4.6. SET TRANSACTION语法 13.4.7. XA事务 13.5. 数据库管理语句 ... -
MySQL 5.1官方简体中文参考手册
2010-07-02 09:10:242.3.9. 选择MySQL服务器类型 2.3.10. 首次启动服务器 2.3.11. 从Windows命令行启动MySQL 2.3.12. 以Windows服务方式启动MySQL 2.3.13. 测试MySQL安装 2.3.14. 在Windows环境下对MySQL安装的故障诊断与排除 2.3.15. ... -
Access 2000数据库系统设计(PDF)---031
2006-02-23 15:31:041044.11.2 改变字段数据类型和大小 1054.11.3 改变表之间的关系 1064.12 复制和粘贴表 1074.13 疑难解答 1084.14 现实世界—数据库战略和表战术 108第5章 输入、编辑和验证表中的数据 1105.1 在Access表中输入测试...
收藏数
77
精华内容
30