[英]Excel VBA: Max Date in the row including blank cells
Excel VBA:在包含空白单元格的行中查找最大日期的代码
Dim s As Date
s = WorksheetFunction.Max((If IsNotEmpty (CDate(Range("A" & x + 1).Value), CDate(Range("B" & x + 2).Value), CDate(Range("C" & x + 1).Value)))
MsgBox s
我有一个表,其中大约有8个列包含日期(例如开始日期,结束日期等)。 现在,对于每一行,某些列为空白。 我必须在每一行中找到最大日期。
您好,请参考下面的代码,从A1到AA1单元格包含空白单元格的日期
Sub maxdaterow()
Max_date = Application.WorksheetFunction.Max(Range("A1:AA1"))
MsgBox Max_date
End Sub
下面的代码在A列中查找最大日期,该日期还包含空白单元格
Sub maxdate()
Max_date = Application.WorksheetFunction.Max(Columns("A"))
MsgBox Max_date
End Sub
我建议你这样做:
sub tryme()
For i = 1 To 50
Max_date = Application.WorksheetFunction.Max(Rows(i))
if isempty(Max_date) = False then
MsgBox cDate("The most recent date for row : " & i & "is : " & Max_date)
end if
Next
end sub
i
是你的行号; 您将必须设置行数,或使用.Count
您可以尝试:
Option Explicit
Sub test()
Dim i As Long, y As Long
Dim dDate As Date
With ThisWorkbook.Sheets("Sheet1")
'Loop rows 1-10
For i = 1 To 10
'Set a default date
dDate = "1/1/1900"
'Loop columns from 1-8
For y = 1 To 8
If .Cells(i, y).Value <> "" And .Cells(i, y).Value > dDate Then
dDate = .Cells(i, y).Value
End If
Next y
Debug.Print "Max date for row " & i & " is date " & dDate
Next i
End With
End Sub
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.