Excel If 语句用于捕获单元格中的任何日期

Excel If 语句用于捕获单元格中的任何日期

我需要捕获单元格,并且仅在单元格是日期时将其放在另一张工作表上。有没有办法说 =IF('Master Intake Tracker'!K7="Any Date",'Master Intake Tracker'!I7,"")........有什么办法吗?并且如果单元格没有答案,也不会捕获?所以如果单元格为空白,它就不会捕获并发送到另一张工作表?

答案1

或者,您可以使用以下用户定义函数(它只是使 VBA 函数在电子表格上可用:

Function IsADate(aCell As Range) As Boolean

  If IsDate(aCell.Value) Then
    IsADate = TRUE
  Else
    IsADate = FALSE
  End If

End Function

如果单元格具有常规日期格式的 Excel 值或具有指定日期的字符串(例如“2012 年 11 月 3 日”),则此函数将返回 TRUE。

使用很简单:

=IF(ISADATE('Master Intake Tracker'!K7),'Master Intake Tracker'!I7,"")

答案2

日期在 Excel 中只是格式化的数字 - 很难明确检查日期,但您可能只需这样做:

=IF('Master Intake Tracker'!K7>0,'Master Intake Tracker'!I7,"")

这遵循您问题中的公式的逻辑 - 如果您想返回日期本身,则更改为:

=IF('Master Intake Tracker'!K7>0,'Master Intake Tracker'!K7,"")

答案3

使用=DateValue并让 Excel 决定您的输入是否是有效日期。

假设您的测试单元是 A1,则可以使用以下公式:
=IF(ISERROR(DATEVALUE(TEXT(A1,"MM/DD/YYYY"))),"no its not!","its a date!")

在此处输入图片描述

根据您的示例进行定制:
=IF(ISERROR(DATEVALUE(TEXT('Master Intake Tracker'!K7,"MM/DD/YYYY"))),"",'Master Intake Tracker'!K7)

答案4

你的问题有点模糊和含糊。如果你的意思是“约会,存储为日期(以 Excel 的日期数字表示形式)?“, 然后

=IF(AND(K7<=NOW(), K7>=(TODAY()-365)), …, "")

可能是个不错的起点。

相关内容