检查列

时间:2015-09-26 02:14:52

标签: excel vba excel-vba text excel-formula

我在Excel 2013中有一张桌子,里面有成千上万的食品记录(牛肉冷冻,牛肉冷冻,牛腩,牛肋骨,鸡肉片,鸡肉整块,鱼皮,鱼 - 整个,酸奶,生菜进口,生菜冷冻,番茄新鲜,番茄,水,牛奶......等)存储在A栏中。注意,该值可能包含除食品名称以外的其他内容。

我在A栏旁边创建了B列。我希望B列保存A栏中食品的类别。例如,如果A1中有“牛肉”或“鸡肉”或“鱼”,那么B1应该等于“肉”。如果A1中含有“番茄”或“生菜”或“洋葱”,那么B1应该等于“蔬菜”。

实现它的最佳方法是什么?

2 个答案:

答案 0 :(得分:1)

假设您有列标题,请在单元格B2中输入此公式:

def rulesWithComma = context.testCase.getPropertyValue('RESPONSE_RULES')
def rules = rulesWithComma.split(',')
rules.each { rule -> 
  print rule
  //do other stuff here
}
  

这是一个数组公式,必须使用 Ctrl + Shift + Enter 确认。

现在复制B2并根据需要选择B3并粘贴。

注意:请仔细查看公式中间的大差距。你会发现这实际上是两个与一个和号连接在一起的独立公式。您可以通过为新类别添加与前两个类似的其他短语,以相同的方式轻松扩展此公式。事实上,你可以用这种方式添加更多类别。

答案 1 :(得分:0)

设置两列表。将其命名为,例如FoodTable。对于产品类型,请将第一列命名为Word(用于关键字),将第二列命名为Type。像这样:

enter image description here

然后,使用A列中的数据,在B1中输入以下公式并填写:

=LOOKUP(2,1/ISNUMBER(FIND(FoodTable[Word],A1)),FoodTable[Type])

结果:

enter image description here