Excel 2013比较不同行上的date使用macros“运行时错误13,types不匹配”

我是vba中的新人,目前我正在工作,而我的老板需要我创build一个excelmacros。

macrosfunction是:

  • 比较数据是date,开始date和结束date。
  • 自动提醒用户员工合同过期时打开工作表。
  • 如果员工合同过时,突出员工的细节。

所以现在我被卡住,直到“运行时错误13,types不匹配”。

下面是我的编码部分,不匹配是>>> <<<。

Private Sub Worksheet_Activate() Dim rngA As Range Dim rngD As Range With Worksheets("Sheet1") For Each rngA In .Range(.Range("A1"), .Cells(.Rows.Count, "A").End(xlUp)) For Each rngD In .Range(.Range("D1"), .Cells(.Rows.Count, "D").End(xlUp)) >>> If rngA.Value("A1:xlUp") >= rngD.Value("D1:xlUp") Then <<< MsgBox "Sheet 1 Row " & rngA.Row & " expiring" rngC.Interior.ColorIndex = 3 rngC.Font.ColorIndex = 2 rngC.Font.Bold = True End If Next rngD Next rngA End With End Sub 

请试试这个

 With Worksheets("Sheet2") lastrow = Range("A1048576").End(xlUp).Row For i = 2 To lastrow If Range("A" & i).Value <> "" And Range("D" & i).Value <> "" Then If Range("A" & i).Value >= Range("D" & i).Value Then Range("C" & i).Value = "Contract Going to Expire" Range("C" & i).Interior.Color = 3 Range("C" & i).Font.ColorIndex = 2 Range("C" & i).Font.Bold = True End If End If Next i 

结束