我有一个Excel表格如下:
Color | Inventory
Blue | 180
Red | 50
Green | 10
我想根据我要使用的产品查找我需要的颜色的库存,然后减去它是否在过去的行上使用,我的表格看起来像这样:
Item | Color | Usage | Inventory Left
ABC | Blue | 50 | 130
BCD | Blue | 30 | 100
CDE | Blue | 50 | 50
EFG | Red | 25 | 25
FGH | Red | 10 | 15
GHI | Green | 5 | 5
我怎么能用Excel公式做到这一点?
我在考虑使用OFFSET的某种类型的SUMIF,但我无法弄明白。
答案 0 :(得分:2)
如图所示,请尝试:
def lookUp[T:ru.TypeTag](obj: T, key: String): Option[Any] = ru.typeTag[T].tpe match {
case ru.TypeRef(a, m, l) if(m.name.toString=="Map"&&l.head =:= ru.typeOf[java.lang.String])=> obj.asInstanceOf[Map[String,_]].get(key)
case ru.TypeRef(a, m,l) if(m.name.toString=="Map"&&l.head =:= ru.typeOf[Symbol])=> obj.asInstanceOf[Map[Symbol,_]].get(scala.Symbol(key))
case _ => Try(obj.getClass.getDeclaredMethod(key).invoke(obj)) match {
case Success(x) => Some(x)
case Failure(_) => None
}
}
原则是相同的,但不同的布局可能更方便。