Date 如果前一行为空,则自动填充当前日期
我有一个按日期排序的电子表格。每天,我都会在里面输入新的数据。每天结束后,在第二天开始之前,我留下一排空位。例如:Date 如果前一行为空,则自动填充当前日期,date,excel,excel-2007,autofill,vba,Date,Excel,Excel 2007,Autofill,Vba,我有一个按日期排序的电子表格。每天,我都会在里面输入新的数据。每天结束后,在第二天开始之前,我留下一排空位。例如: 20.09.12 XXXXX XXXXX XXXXX XXXX XXXXX XXXX XXXXX XX XX XXXXX XX XXXX 21.09.12 XXX XXXXX XXX XXXX X XXXX XXXX XXX 22.09.12 XXXX XX XXXX XXXX
20.09.12 XXXXX XXXXX XXXXX XXXX
XXXXX XXXX XXXXX XX
XX XXXXX XX XXXX
21.09.12 XXX XXXXX XXX XXXX
X XXXX XXXX XXX
22.09.12 XXXX XX XXXX XXXX
因此,我希望excel在我输入一个空行之后的数据时始终填写当前日期,但很明显,日期应保持不变——而不是在我打开excel时更新为当前日期。我使用的是Excel2007,虽然非vba的想法是首选,但vba也不是问题 这里有一个相当简单(粗糙的?)的方法,可以使用工作表的工作表\u Change
事件来使用VBA进行操作
实际上,每次更改单元格时,它都会检查上面的整行是否为空,如果为空,则将今天的日期放在a列中
Private Sub Worksheet_Change(ByVal Target As Range)
If WorksheetFunction.CountA(Rows(Target.Offset(-1, 0).Row)) = 0 Then
Range("A" & Target.Row) = Format(Now(), "dd.mm.yy")
End If
End Sub
下面是一种使用VBA使用工作表的Worksheet\u Change
事件执行此操作的相当简单(粗糙)的方法
实际上,每次更改单元格时,它都会检查上面的整行是否为空,如果为空,则将今天的日期放在a列中
Private Sub Worksheet_Change(ByVal Target As Range)
If WorksheetFunction.CountA(Rows(Target.Offset(-1, 0).Row)) = 0 Then
Range("A" & Target.Row) = Format(Now(), "dd.mm.yy")
End If
End Sub
有一个插入今天日期的快捷方式:Ctrl
我认为如果你使用快捷方式,你可能不需要宏
时间的类似快捷方式是CtrlShift 插入今天的日期有一个快捷方式:Ctrl
我认为如果你使用快捷方式,你可能不需要宏
时间的类似快捷方式是CtrlShift 好主意,但要使其工作,请放弃
选择。
退出CountA(选择…)
好主意,但要使其工作,请放弃选择。
退出CountA(选择…)
+1对于非VBA解决方案:)顺便说一句,很高兴在这里见到您;+1对于非VBA解决方案:)顺便说一句,很高兴在这里见到您;)