+ -
当前位置:首页 → 问答吧 → 单元格相减类型不匹配

单元格相减类型不匹配

时间:2011-08-02

来源:互联网

Sub wade()
Dim r1 As Range
Set r1 = selection.Cells(1, 1).Offset(0, 1).End(xlDown) '把选定区域第一个单元格所在行的下一行有数字区域的最后一单元格的值赋给r1
For Each c In selection
    c.Offset(0, 2) = c.Offset(0, 1) - c.Offset(-1, 1)          '对选取单元格横向后移两位的单元格的值取选取单元格横向后一格减去上面一个单元格
    c.Offset(0, 2).Value = c.Offset(0, 2) / r1.Value         '选取单元格后横向两格的值除以r1的值
Next
End Sub

上面这段代码是从一个长代码截取的,调试时出的错误蛮多的
具体有以下几点;
1.c.Offset(0, 2) = c.Offset(0, 1) - c.Offset(-1, 1)     类型不匹配
2.c.Offset(0, 2) = c.Offset(0, 1) - c.Offset(-1, 1)     运行时错误1004:应用程序定义或对象定义错误
3.c.Offset(0, 2).Value = c.Offset(0, 2) / r1.Value    溢出

作者: eape   发布时间: 2011-08-02

无附件
类型不匹配,可能数据超出选取的范围
运行时错误1004:应用程序定义或对象定义错误,可能没有定义c
溢出,可能数据有0,即0为分母

作者: longming3   发布时间: 2011-08-02