当另一个单元格填充时,自动将值设置为在Excel中清空单元格
我有一个电子表格跟踪共享networking驱动器上的某些信息。 当用户添加一行时,特别是将数据input到下一个可用行(单元格B)时,我想将其他单元格设置为默认值。 例如,单元格A应该是一个1号码,单元格C应该是用户名,单元格D应该是当前date,时间戳。
个别地,我知道如何去做所有的事情,但是当单元格B从空白变为空白时,我不知道如何设置这些单元格。
我不反对使用VBA,但是如果可能的话,我想尽量避免。
使用VBA,您希望录制的某些内容更加容易。 我将使用下面的工作表事件macros:
Private Sub Worksheet_Change(ByVal Target As Range) Dim s As String If Intersect(Target, Range("B:B")) Is Nothing Then Exit Sub ary = Split(Environ("homepath"), "\") s = ary(UBound(ary)) Application.EnableEvents = False With Target .Offset(0, -1).Value = .Offset(-1, -1).Value + 1 .Offset(0, 1).Value = s .Offset(0, 2).Value = Now End With Application.EnableEvents = True End Sub
因为它是工作表代码,所以安装和自动使用非常简单:
- 右键单击Excel窗口底部附近的选项卡名称
- select查看代码 – 这会popup一个VBE窗口
- 粘贴东西,closuresVBE窗口
如果您有任何疑问,请先在试用工作表上尝试。
如果您保存该工作簿,该macros将与它一起保存。 如果您在2003年以后使用的是Excel版本,则必须将该文件另存为.xlsm而不是.xlsx
要删除macros:
- 调出上面的VBE窗口
- 清除代码
- closuresVBE窗口
要了解有关macros的更多信息,请参阅:
http://www.mvps.org/dmcritchie/excel/getstarted.htm
和
http://msdn.microsoft.com/en-us/library/ee814735(v=office.14).aspx
要了解有关事件macros(工作表代码)的更多信息,请参阅:
http://www.mvps.org/dmcritchie/excel/event.htm
macros必须启用这个工作!