所以我在这里尝试不使用VBA。
我有一个下拉列表,用于从3种可能的班次中选择一种:早,晚,夜。
根据选择,我想以15分钟为间隔填写下表中的“时间”列。早点从6:00开始,晚点从14:00开始,晚上从22:00开始。
下拉列表位于合并的单元格D3:J3中,“时间”列位于范围C8:C40中。
我尝试使用Index()
和Match()
的组合,并给了我一个Value Error。我也尝试嵌套If()
,但始终返回值0。
在另一个主题中,我希望工作簿始终作为新的未保存工作簿打开,以避免覆盖文件。
答案 0 :(得分:0)
如果您的if返回0-您是如何编写6:00值的?因为如果您为该单元格选择了“时间”格式,并且由于公式的结果分配了值6,它将给出单元格值“ 6.1.1900 0:00:00”并显示0:00。由于值1代表Excel时间/日期术语中的一天,因此,添加任何不带小数的数字将导致添加整天而不从0:00开始移动。
但是,如果我使用简单的IF组合(在单元格C8中)是这样的:
=IF(D3="Early";6/24;IF(D3="Late";14/24;22/24))
它将正常工作,并显示“ 6:00”(早期),等等。然后增加15分钟即可
=C8+15/(24*60)
然后填写
为防止覆盖,您既可以将其另存为模板(这样,即使使用键盘快捷键进行保存,它也总是会询问您要将其保存在何处)或将文件打开为只读。