excel宏运行时错误,溢出(类型6),请问怎么修改语句?

请大神帮助修改VBA语句,第二行运行错误,拜谢!
 
 
类型不匹配是由c as string引起的,因为声明c后没有给他赋值为有效的数值字串,计算时,数值型的字串会自动转换成响应的数值参与运算,而零长度的字串是不被支持的。
如变量声明改成dim m,v,b,d,c,其他不变,则会出现"溢出“错误,因为100*d=0(除数为0)
如变量声明改成dim m as integer,v as integer,b as integer,d as integer,c as integer,其他不变,也会出现”溢出“错误,因为100*d=0(除数为0)
要排除错误,必须确保每个变量在计算时能正确进行类型转换,同时,还必须确保数值大小在对应数字类型的大小范围之内,有除法时,除数必须不等于0

如果你的数据库中的数据存储就是date类型的,那么从recordset中获取的数据,要经过format格式赋值给单元格的value或者text属性,如下:

我想的一种办法是,将取出来的数据全部转化成字符串的形式,然后显示出来,这样应该就不会出问题了把! 但是不知道这样行不行,代码也不知道怎么写,还要请教大家帮忙啊!

我想的一种办法是,将取出来的数据全部转化成字符串的形式,然后显示出来,这样应该就不会出问题了把! 但是不知道这样行不行,代码也不知道怎么写,还要请教大家帮忙啊!

如果你的数据库中的数据是日期型的,那么用格式化函数就可以搞定了,format函数,用法自己查一下吧。

如果你数据库中是字符串格式,那么就需要特殊的字符串处理了。

至于excel的显示,只是一个显示样子而已,不管你是日期还是字符串,显示对了就成了。
如果你的excel单元格还要参与运算,才需要把样式格式设置的符合你的要求。

谢谢,知道是什么原因了,还想请教一下,怎么把某一列变成是日期格式,因为我从数据库里面取出来的数据是: 11:12:01这种形式的,需要怎么转化才能在工作表中正确的显示?

谢谢,知道是什么原因了,还想请教一下,怎么把某一列变成是日期格式,因为我从数据库里面取出来的数据是: 11:12:01这种形式的,需要怎么转化才能在工作表中正确的显示?

谢谢,知道是什么原因了,还想请教一下,怎么把某一列变成是日期格式,因为我从数据库里面取出来的数据是: 11:12:01这种形式的,需要怎么转化才能在工作表中正确的显示?

在平时使用公式出现错误常有一些错误值,各个错误值代表不同的含义,每个错误值都有不同的原因和解决方法,下面就逐个来了解一下。快来学习吧!

此错误表示列不够宽,或者使用了负日期或时间.

当列宽不足以显示内容时,可以通过以下几种办法纠正:

(1)调整列宽,或直接双击列标题右侧的边界.

(2)缩小内容以适应列宽.

(3)更改单元格的数字格式,使数字适合现有单元格宽度.例如,可以减少后的小数位数.

当日期和时间为负数时,可以通过以下几种方法纠正:

(1)如果使用的是1900日期系统,那么日期和时间必须为正值.

(2)如果对日期和时间进行减法运算,应确保建立的公式是正确的.

(3)如果公式是正确的,但结果仍然是负值,可以通过将相应单元格的格式设置为非日期或时间格式来显示该值.

此错误表示使用的参数或操作数的类型不正确.可能包含以下一种或几种错误:

(1)当公式需要数字或逻辑值(例如TURE或FALSE)时,却输入了文本. (2)输入或编辑数组公式,没有按组合键Ctrl+Shift+Enter,而是按了Enter键.(3)将单元格引用、公式或函数作为数组常量输入.

(4)为需要单个值(而不是区域)的运算符或函数提供区域.

(5)在某个矩阵工作表函数中使用了无效的矩阵.

(6)运行的宏程序所输入的函数返回#VALUE!

这种错误表示使用数字除以零(0).具体表现在:

(1)输入的公式中包含明显的除以零的计算,如"=5/0".

(2)使用了对空白单元格或包含零作为除数的单元格的单元格引用.

(3)运行的宏中使用了返回#DIV/0!的函数或公式.

确保函数或公式中的除数不为零 (0) 或不是空值。

将公式中的单元格引用指向的单元格更改为不含零或空值的其他单元格。

使用 IF 工作表函数可防止显示错误值。然后,可以将结果显示为 0 或字符串。

当数值对函数或公式不可用时,将出现此错误.具体表现在:

(4)数组公式中使用的参数的行数或列数与包含数组公式的区域的 行数或列数不.

(5)内置或自定义工作表函数中省略了一个或多个必需参数.

(6)使用的自定义工作表函数不可用.

(7)运行的宏程序所输入的函数返回#N/A.

一般情况下可以通过错误提示的显示计算步骤功能来分析具体的错误原因,进行修正公式。

对于某些函数,例如:HLOOKUP、LOOKUP、MATCH 或 VLOOKUP需要注意数据类型以及数据源排序等一些特殊情况。

当Excel无法识别公式中的文本时,将出现此错误.具体表现在:

(2)使用了不存在的名称.

(4)函数名称拼写错误.

(5)在公式中输入文本时没有使用双引号.

(6)区域引用中漏掉了冒号.

(7)引用的另一张工作表未使用的单引号引起.

(8)打开调用用户自定义函数(UDP)的工作薄.

将sum函数误输入为sun

当单元格引用无效时,会出现此错误.具体表现在:

(1)删除了其他公式所引起的单元格,或将已移动的 单元格粘贴到了其他公式所引起的单元格上.

(2)使用的对象链接和嵌入链接所指向的程序未运行.

(3)链接到了不可用的动态数据交换(DDE)主题,如"系统".

(4)运行的宏程序所输入的函数返回#REF!.

如果公式或函数中使用了无效的数值,则会出现此错误.具体表现在:

(1)在需要数字参数的函数中使用了无法接受的参数.

(2)使用了进行迭代的工作表函数(如IRR或RATE),且函数无法结果.

(3)输入的公式所得出的数字太大或太小,无法在Excel2007中表示.

如果指定了两个并不相交的区域的交点,则会出现错误.具体表现在:

(1)使用了不正确的区域运算符.

提示:引用之间的交叉运算符为空格.

作者声明本文无利益相关,欢迎值友理性交流,和谐讨论~

我要回帖

更多关于 宏程序刀补变量代码 的文章

 

随机推荐