我有一个大约50个资源的平面图,需要标记为可用,保留或占用。我选择为每个资源使用数据验证单元格下拉列表。是否可以将文本保留在数据验证单元格中,使用源作为下拉选项,并根据选择更改填充颜色?这可能很难理解,所以我将提供一个例子。
给出示例:
A1:A3是可用,保留和占用的来源。
单元格D3:可用,保留和占用作为下拉列表,填充颜色将分别变为绿色,橙色或红色,并将文本保留在单元格中。
答案 0 :(得分:0)
首先,使用数据验证根据单元格D3中单元格A1:A3(可用,保留和占用)中的值创建列表。
然后,使用条件格式通过“使用公式确定要格式化的单元格”来设置三个规则。每种颜色都需要一个,即。
=$D$3="Available" - Applies to: =$D$3 - Format: Green fill
=$D$3="Reserved" - Applies to: =$D$3 - Format: Orange fill
=$D$3="Occupied" - Applies to: =$D$3 - Format: Red fill
答案 1 :(得分:0)
您可以使用条件格式来实现相同的目标。下面给出的示例使用 MS-Excel 2007 。
假设您在D3(或多个单元格)中已存在下拉列表,请选择需要格式化的单元格(或多个单元格)。
在主页标签中 - >转到条件格式选项 - >选择突出显示细胞规则 - > 等于选项。将打开一个对话框,如下图所示。输入您需要的单元格引用和所需格式(例如Available
为$ A $ 1),然后点击确定。
对Reserved
和Occupied
重复相同的格式。
答案 2 :(得分:0)
首先放置ComboBox控件并将.visible
属性设置为false
。使用.AddItem
方法添加Available
等。到它的清单。我想你想要下面的东西。
Private mrngMyRange As Range
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
If Target.Column = 4 Then 'This restricts the sensitive range to column `D`
ComboBox1.Visible = True
ComboBox1.Left = Target.Left
ComboBox1.Top = Target.Top
Set mrngMyRange = Target
ComboBox1.Select
Else
ComboBox1.Visible = False
End If
End Sub
Private Sub ComboBox1_Change()
'mrngMyRange.Value = ComboBox1.Text
If ComboBox1.Text = "Available" Then
mrngMyRange.Cells(1, 1).Interior.ColorIndex = 4
ElseIf ComboBox1.Text = "Reserved" Then
mrngMyRange.Cells(1, 1).Interior.ColorIndex = 46
ElseIf ComboBox1.Text = "Occupied" Then
mrngMyRange.Cells(1, 1).Interior.ColorIndex = 3
End If
ComboBox1.Visible = False
End Sub