2017-08-29 35 views
-1

试图从逗号分隔值的单元格构建数据验证列表。来自逗号分隔单元格中的值的数据验证列表

看一看图像,如果用户选择“FFP-IS”的名单应该是:

ACC 
ADM 
AOS 
ABU 

enter image description here

+1

你有什么试过?堆栈溢出不是我网站的代码。 –

+0

对不起,斯科特,我试过使用公式,但没有运气。只是寻求帮助。 – Gooney

+0

@Gooney:使用公式可能非常困难。使用VBA将是最好的(最简单的)帮助你在这里。尽力编写VBA解决方案。如果您仍然遇到问题,请回复您尝试过的代码。 – abraxascarab

回答

0

你能砍使用逗号分隔的列表中的数据验证列表使用隐藏范围,UDF和多个命名范围。

首先将UDF(注意我已经使用塔A作为值的存储库 - 其可以被隐藏):

Public Function DVList(Cell As Range) As Range 
    Dim i As Long, arr() As String: arr = Split(Cell.Value, ",") 
    For i = 0 To UBound(arr) 
     Range("A1").Offset(i) = arr(i) 
    Next i 
    Set DVList = Range(Range("A1"), Range("A1").Offset(UBound(arr))) 
End Function 

然后设置一个命名范围如“DVList1”与公式“= DVList(工作表Sheet1!$ I $ 4)”,其中工作表Sheet1!$ I $ 4包含以逗号分隔值的字符串

最后补充一个数据验证列表单元以 “= DVList1”

名单将现在被填充了值

这个范围相当有限;所以你需要为逗号分隔的每个单元格设置一个不同的命名范围。但您可以根据自己的需求进行编辑。

相关问题