我有电子表格,列出A列中的日期,从2016年12月1日上午1:45:00开始。我重新格式化此列中的所有单元格,以便显示Day,Month#,Year。示例Thursday, December 01, 2016
。如果我点击实际的查找按钮并搜索值,Find
函数可以正常工作,但是我很难对此进行编码。我想删除包含"星期六"的所有行和"星期天"。我尝试过的最新代码如下:
Last = Cells(Rows.Count, "D").End(xlUp).Row
For i = Last To 1 Step -1
If (Cells(i, "D").Value) = "*Saturday*" Then
Cells(i, "A").EntireRow.Delete
End If
Next i
我也尝试过以下代码;
Set Find = Range("A:A").Find("Saturday", LookIn:=xlValues)
Do Until Find Is Nothing
Find.EntireRow.Delete
Set Find = Range("A:A").FindNext
Loop
答案 0 :(得分:1)
将LookAt参数设置为xlPart
Find("Saturday", , , xlPart)
答案 1 :(得分:0)
更改
If (Cells(i, "D").Value) = "*Saturday*" Then`
到
If (Cells(i, "D").Text) Like "*Saturday*" Then
使用Text
代替Value
将访问显示的值,而不是基础值(日期),使用Like
代替=
将允许通配符工作。
您的问题令人困惑的是日期所在的列。您的一些代码(以及您的问题)表明它们位于A列中,但代码的其他部分建议使用D列。如果它们位于A列中,请更改上面的代码使用"A"
代替"D"
。