我用以下代码来比较两个单元格的里的值的大小,为什么会出现“运行时错误‘13’类型不匹配”的错误呢?    If Worksheets(Sheet1).cell(1, 1).Value > Worksheets(Sheet1).cell(1, 2).Value Then
        MsgBox "first bigger"
    Else
        MsgBox "second bigger"
    End If

解决方案 »

  1.   

    检查一下Excel对应单元格的属性中,类型是否是一致的
    加个Val()试试,强制转换为数值类型.    If Val(Worksheets(Sheet1).cell(1, 1).Value) > Val(Worksheets(Sheet1).cell(1, 2).Value) Then
            MsgBox "first bigger"
        Else
            MsgBox "second bigger"
        End If
      

  2.   


    If Worksheets("Sheet1").Cells(1, 1).Value > Worksheets("Sheet1").Cells(1, 2).Value Then
       MsgBox "first bigger"
    Else
       MsgBox "second bigger"
    End If'Worksheets() 括号里请填工作表的索引序号或名字,索引序号为数字,名字请加上引号
    'Cell -> Cells
    '都是小问题,请学会查看EXCEL VBA的帮助文档
    '注意每个单元格的值的数据类型