excel 中在B列单元格下拉菜单输入内容,C列自动弹出当前时间,且C列的时间不在改变
接着D列下拉菜单输入内容,E列自动弹出当前时间,且E列的时间不在改变,求助啊2楼的方法可以解决我的问题了,但是有新的问题,我做好的excel表无法保存这个宏,再次打开就无...
接着D列下拉菜单输入内容,E列自动弹出当前时间,且E列的时间不在改变,求助啊
2楼的方法可以解决我的问题了,但是有新的问题,我做好的excel 表无法保存这个宏,再次打开就无法使用了,该怎么办? 展开
2楼的方法可以解决我的问题了,但是有新的问题,我做好的excel 表无法保存这个宏,再次打开就无法使用了,该怎么办? 展开
2个回答
展开全部
我明白楼主的意思了,所以,请按下述步骤操作。
①、在需要自动弹出当前时间的工作表的标签上点鼠标右键,然后从快捷菜单中选“查看代码”,
②、复制以下代码,粘贴到VBA代码编辑器的代码窗口内,然后关闭VBA编辑器。It's OK!
Private Sub Worksheet_Change(ByVal Target As Range)
With Target.Cells(1)
'if .row<=2 then exit sub '如果第1、2行为标题行,此语句确保不修改标题行
If .Column = 2 Or .Column = 4 Then .Offset(0, 1) = Now
End With
End Sub
不能保存宏?——这是因为你的EXCEL是2007或以上版本的。
解决办法:粘贴代码后,另存为“启用宏的工作薄”即.xlsm格式。而且,在打开这个工作薄时,要启用宏。
①、在需要自动弹出当前时间的工作表的标签上点鼠标右键,然后从快捷菜单中选“查看代码”,
②、复制以下代码,粘贴到VBA代码编辑器的代码窗口内,然后关闭VBA编辑器。It's OK!
Private Sub Worksheet_Change(ByVal Target As Range)
With Target.Cells(1)
'if .row<=2 then exit sub '如果第1、2行为标题行,此语句确保不修改标题行
If .Column = 2 Or .Column = 4 Then .Offset(0, 1) = Now
End With
End Sub
不能保存宏?——这是因为你的EXCEL是2007或以上版本的。
解决办法:粘贴代码后,另存为“启用宏的工作薄”即.xlsm格式。而且,在打开这个工作薄时,要启用宏。
展开全部
找到一段代码,可以实现B1输入内容,C1自动弹出当前时间,但要到明天检验才知道时间是否不再改变:
Alt+F11——菜单栏——视图——代码窗口——复制以下代码后关闭VBA窗口:
Public rgold As Range
Public rgold1 As Range
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Set rgold1 = Range("B1")
Set rgold = Target
If rgold <> rgold1 Then
Range("C1") = Now()
Else
Range("C1") = "OK,yes"
End If
Set rgold = Target
End Sub
Alt+F11——菜单栏——视图——代码窗口——复制以下代码后关闭VBA窗口:
Public rgold As Range
Public rgold1 As Range
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Set rgold1 = Range("B1")
Set rgold = Target
If rgold <> rgold1 Then
Range("C1") = Now()
Else
Range("C1") = "OK,yes"
End If
Set rgold = Target
End Sub
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询