Vba 。如果从工作表启动,则查找宏不工作
我正在尝试使用vba在列中写入一个带有当前日期的“X”。Vba 。如果从工作表启动,则查找宏不工作,vba,excel,Vba,Excel,我正在尝试使用vba在列中写入一个带有当前日期的“X”。 如果我从调试窗口运行代码,在那里我编写了代码,它按预期工作,但只要我尝试通过单击分配给它的矩形来运行它,它就会显示“未找到” 提前感谢您的帮助或想法 守则: Sub Button() Dim wb As Workbook Dim ws As Worksheet Dim col As Long Dim rng As Range Set wb = ActiveWorkbook Set ws =
如果我从调试窗口运行代码,在那里我编写了代码,它按预期工作,但只要我尝试通过单击分配给它的矩形来运行它,它就会显示“未找到” 提前感谢您的帮助或想法 守则:
Sub Button()
Dim wb As Workbook
Dim ws As Worksheet
Dim col As Long
Dim rng As Range
Set wb = ActiveWorkbook
Set ws = wb.Sheets("Sheet 2")
With ws.Cells
Set rng = .Find(what:=Format(Date))
If rng Is Nothing Then
MsgBox "Not found"
col = 1
Else
MsgBox "Found"
col = rng.Column
End If
End With
ws.Cells(10, col).Value = "X"
MsgBox "Wrote to Field: " & row & "," & col
End Sub
尝试将格式(日期)替换为CDate(日期)尝试在Format()函数中包含与您的数据匹配的格式说明。@Gary的学生感谢您的回答,您的意思是这样的
格式(日期,“dd.mm.yyyy”)
?我仍然得到同样的错误。Activeworkbook是你认为的吗?@Harassedad我想是的,至少它在下一行找到了正确的工作表,并且是唯一打开的工作簿。如果我按名字来设定的话,行为也不会改变。好吧,这有点有效。现在,如果我在debug中运行宏,它将不工作,但是如果我单击矩形,它将工作。这太奇怪了好吧,我什么都没改,但今天它也可以在调试屏幕上运行。谢谢