Excel 按日期和时间检索值的最新状态
在我的excel工作表“Progress Status”中,我有两列,第一列包含在我的周期中包含的所有测试用例的列表,第二列我想从另一个名为“all run TestCases”的工作表中获取测试用例的最新状态Excel 按日期和时间检索值的最新状态,excel,datetime,Excel,Datetime,在我的excel工作表“Progress Status”中,我有两列,第一列包含在我的周期中包含的所有测试用例的列表,第二列我想从另一个名为“all run TestCases”的工作表中获取测试用例的最新状态 我尝试使用一些excel函数来获取最新的日期和时间,以便获取测试用例的最新状态,但我没有成功,因为我对它们没有深入的了解,请有人帮我解决这个问题。好的,这是答案。确保executionDate和executionTime列分别采用日期和时间格式。使用以下函数=B3+C3创建一个新列作为F
我尝试使用一些excel函数来获取最新的日期和时间,以便获取测试用例的最新状态,但我没有成功,因为我对它们没有深入的了解,请有人帮我解决这个问题。好的,这是答案。确保executionDate和executionTime列分别采用日期和时间格式。使用以下函数
=B3+C3
创建一个新列作为FinalTime
。剩下的就用这个然后可以使用以下宏。如果单击了
OLEDB连接
,您可能需要在VBA屏幕中检查Tools>preferences
。我假定您的工作表名称为
TestCases
和ProgressStatus
。而测试用例名称
的标题更改为测试
。您可以在工作表或宏中更改它们
Sub makro()
Dim deneme As String
Dim queryStr As String
Dim con As Object, rs As Object, sorgu$, a$
Set con = CreateObject("adodb.connection")
Set rs = CreateObject("adodb.recordset")
con.Open "provider=microsoft.ace.oledb.12.0;data source=" & _
ThisWorkbook.FullName & ";extended properties=""Excel 12.0;hdr=yes"""
queryStr = "Select u.[Test]" & _
",u.[Status] " & _
"From [TestCases$] As u " & _
"Inner Join ( " & _
"Select [Test] " & _
",max(FinalTime) as [LastDate] " & _
"From [TestCases$] " & _
"Group By [Test]) As [q] " & _
"On u.Test = q.Test " & _
" And u.FinalTime = q.LastDate"
Set rs = con.Execute(queryStr)
Sheets("ProgressStatus").Range("A2").CopyFromRecordset rs
Set rs = Nothing
Set con = Nothing
End Sub
下面是我编写的测试用例和ProgressStatus以及结果表。
欢迎来到SO!请包括您迄今为止尝试过的内容,虽然在它周围有背虱,但在这种情况下应该可以。我怀疑索引(MATCH())和添加另一列的组合会简化您的问题,或者使用重数组公式可能会满足您的需要。您好,我在工作表“进度状态”中的“最后状态”列中使用了此代码=IF(MAX(IF(IF(Progress Status!F3=所有运行测试用例!$a$2:$a$10;$B$2:$B$10));所有运行测试用例!$D$3:$D$10;“”)如果你把日期和时间合并在一列中,会容易得多。不幸的是,这是不可能的。当我生成所有运行测试用例的列表时,我会在它们自己的列中获得日期和时间。我试图更改sql查询以连接这两个查询,但没有成功:(您可以对它们求和。
=B3+C3
。这对我很有效。您好,我宁愿尝试使用excelfunktion找到解决方案,但无论如何都要感谢