答案1
您需要用 VBA 编写触发器。电子表格文件的扩展名需要为 ,.xlsm
而不是
.xls
。
我建议将选项列表转换为下拉列表。请参阅 Microsoft 的 创建和管理下拉列表。
然后,您可以通过 VBA 触发器捕获下拉列表中的更改,例如:
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$A$1" Then
If Target.Value = "SUNDAY" Then
Cells(1, 2) = "abc"
...
ElseIf Target.Value = "MONDAY" Then
Cells(1, 2) = "xyz"
...
End If
End If
End Sub
上述代码只是一个未经测试的示例。您需要学习 VBA 才能完成它,但您可以在网上轻松找到所需的一切。
答案2
你可以做一些看起来无需 VBA 即可,但有点麻烦。不过,如果您的用户对允许宏运行很敏感,这是一种解决方法。从您的数据设置开始,请按照以下步骤操作:
- 创建一个空白部分。它很适合放在星期六旁边。
- 使用相机工具拍摄其中一个部分的快照并将其移动到结果部分中。您可以像其他任何形状一样对其进行格式化,以便可以关闭其边框以使其看起来更正确。
- 在其他地方,创建一个返回范围的公式地址您希望显示各种选项。我在本例中没有填写所有选项,但您可以添加其他选项。
0
最后的是如果选项为空。
=SWITCH(B2,"SUNDAY","H2:K4","MONDAY","L2:O4",0,"L14:O16")
- 从公式功能区中打开名称管理器。单击左上角的“新建”,创建一个命名范围,指向公式所在的位置,
SWITCH()
但将其包装在INDIRECT()
函数内。在我的例子中,公式B7
如下所示:
- 将相机工具形状中的公式更改为指向您刚刚创建的命名范围。您可以选择该形状,然后直接在公式栏中编辑公式。
- 更改选项,您会对 Excel 所能做的事情感到惊讶。