我有一个问题,http://goo.gl/i82eA这是我有所需的输出样本数据。目前我有一个用户定义的函数,它手动使用许多if语句来完成这项工作,但是我希望能够做一些类似于vlookup的工作,如果它在colum中找到某种颜色并返回与之相关的颜色映射。复杂的Vlookup/VBA函数或宏需要“如果包含文本,然后查找”
或者像过滤器函数一样使用,如过滤所有包含蓝色的单元格,并给目标单元格添加蓝色,然后使用颜色表中的下一个值运行下一个过滤器。
Color ColorMap Text Required Output blue blue Deep Blue Shoe Blue (if Text contains blue return blue) red red Deep red Shoe red (if Text contains red return red) etc tan brown Tan Shoe brown navy blue Navy Emp Shoe blue jade green Jade Shoe green plum red Plum Red Shoe multicoloured (if Text contains more than 1 color return multicolored)
所以输入应该是这样的2列的数据提前抬头一个栏,用于搜索和1列是目标列,如果其功能
function_name(lookup_text,lookup_table,destination)
感谢
PS:这里是现在使用
代码的代码林:
Function Colormap(strVal As String) As String
If (InStr(strVal, "red") > 0) Then
Colormap = "Red"
End If
If (InStr(strVal, "Beige") > 0) Then
Colormap = "Beige"
End If
etc..
End Function
哇!谢谢!!那个作品真棒,你能为我打破这个公式吗?有没有办法让我变成一个函数? 我该如何获得vba等价物? 再次感谢!!!!!!!!!!!!!!!!! – Alfred
更新后的版本处理“多色”返回值。你还需要一个功能吗?如果是这样,那可能更直接,但当然需要VBA和宏的启用。 –
嗨Rachel,嗯,我试过这个公式..但是它没有给梅花红鞋多彩 - 只给红色。谢谢!是的一个功能会更容易,宏启用是没有问题的! – Alfred