这是我用来规划服务人员运行时间的电子表格示例。C9
&C10
到J9
&J10
是当天输入的时间,然后技术人员需要规划当天的运行,B11
是从最后一个站点返回分支机构的时间。
我的问题是:
当值输入到C9:J9
&C10:J10
范围后,我希望 Excel 通过错误消息提示技术人员记得添加 B11 的时间(如果可能)。
关于电子表格:C9:J9
技术人员将以分钟形式将& 的时间相加C10:J10
,并将其转换为 和 的时间B9
。B10
然后将它们相加,最多可输入 7 小时D11
,然后将任何多余的时间输入 F11。
答案1
使用此 VBA 子程序作为标准模块。
注意:
- 在 VBA 的项目资源管理器中双击工作表的名称,然后复制&粘贴此代码。
Private Sub Worksheet_Change(ByVal Target As Range)
If Not (Application.Intersect(Range("C9:J10"), Target) Is Nothing) Then
MsgBox "Cell " & Target.Address & " has filled/altered, now enter data into B11.", vbInformation, "Prompting you,,"
Range("B11").Select
End If
End Sub
- 一旦技术人员开始填充/更改范围中的数据
C9:J10
,宏弹出消息以及已填充的单元格,以填充B11
。
您可以根据需要调整此代码中的单元格引用。
答案2
使用宏的另一种方法是将这样的公式放置在您希望消息显示的任何位置:
=If(COUNTA(C9:J10)>1,”Please add the time”,””)
假设 C9:J10 是空白的,直到有人开始输入信息。