【发布时间】:2016-04-16 20:58:44
【问题描述】:
我已经看到如何说“单元格 x 在 y 范围内”,但由于我使用的是 VLookup,我不知道如何协调这两者。
基本上,下面的代码会查找包含提示的表格,然后将它们显示在指定的单元格中。它工作得很好。我喜欢 要做的是在查找表中指定整个单元格范围,然后如果用户选择该范围内的任何单元格,则会显示提示。就目前而言,如果我有一个很大的区域,比如 10 个单元格,我必须在查找表中创建 10 个重复条目(每个单元格一个)。
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim cellTitle As Range
Set cellTitle = Range("J2")
Dim cellTip As Range
Set cellTip = Range("J3")
If Target.Address = "$J$3:$K$5" Or Target.Address = "$J$2:$K$2" Or Target.Address = "$K$1" Then
'leave existing content in case user wants to copy tip
Else
Range("K1").Value = Target.Address
Title = Application.VLookup(Target.Address, Sheets("Settings").Range("TipsDashboard"), 2, False)
If Not IsError(Title) Then
Tip = Application.VLookup(Target.Address, Sheets("Settings").Range("TipsDashboard"), 3, False)
cellTitle.Value = Title
cellTip.Value = Tip
Else
cellTitle.Value = "Tips & Instructions"
cellTip.Value = "Try selecting various fields to get dynamic tips or instructions in this space."
End If
End If
End Sub
这是我的查找表的示例:
您会注意到这里有范围,但它们是合并的单元格。
【问题讨论】:
-
你试过
find吗? -
我没用过
find函数,没有。 -
今天学习新东西!编辑:嗯。我看着你的桌子,我很困惑。您实际上将单元格构建到一列中进行查找??
-
是的,所以我可以为“仪表板”工作表上的任何单元格添加评论。以我的拙见,它真的很整洁。 :)
标签: vba excel named-ranges