我尝试此代码,但显示“类型不匹配”错误消息。如何访问从单元格中写入的日期年份,vba excel
If year(Sheets("Master-Deal").Cells(i, 9).Value) = 2012 Then
result'''''''
End If
我尝试此代码,但显示“类型不匹配”错误消息。如何访问从单元格中写入的日期年份,vba excel
If year(Sheets("Master-Deal").Cells(i, 9).Value) = 2012 Then
result'''''''
End If
从Excel返回的值是object类型。如果Excel单元格是日期,你可以试试这个:
If Year(CType(Sheets("Master-Deal").Cells(i, 9).Value, Date)) = 2012 Then ...
确保在目标单元格的值不是无效的日期,你可以检查它是否使用功能IsDate()
日期。
If IsDate(Sheets("Master-Deal").Cells(i, 9).Value) Then
If Year(Sheets("Master-Deal").Cells(i, 9).Value) = 2012 Then
' do stuff
End If
Else
' Complain about invalid date?
End If
谢谢你的作品 – Shivendra
谢谢你的工作 – Shivendra
接受答案然后。 ;) – Raybarg