根据列值和Excel公式自动将数据拆分到Excel中的不同工作表中

时间:2015-05-13 09:28:13

标签: excel excel-formula

我的电子表格中基本上有一个员工列表,其中包含一些针对他们的数据。我需要对此列表执行的操作是根据作业角色将这些行拆分为不同的工作表,以便最终得到各种包含1种作业角色的工作表。我已经看到VBA已经完成了这项工作,但我现在还不知道要在VBA中编码,我更喜欢远离数据透视表和过滤 - 我想尝试找到一种方法来使用excel公式来做这个。一些测试数据只是为了给你一个想法是这样的:

func addActivityIndicatorToView(activityIndicator: UIActivityIndicatorView, view: UIView){

    self.view.addSubview(activityIndicator)

    //Don't forget this line
    activityIndicator.setTranslatesAutoresizingMaskIntoConstraints(false)
    view.addConstraint(NSLayoutConstraint(item: activityIndicator, attribute: NSLayoutAttribute.CenterX, relatedBy: NSLayoutRelation.Equal, toItem: view, attribute: NSLayoutAttribute.CenterX, multiplier: 1, constant: 0))
    view.addConstraint(NSLayoutConstraint(item: activityIndicator, attribute: NSLayoutAttribute.CenterY, relatedBy: NSLayoutRelation.Equal, toItem: view, attribute: NSLayoutAttribute.CenterY, multiplier: 1, constant: 0))


    activityIndicator.startAnimating()


}

....从这张表中我需要Jeff和Tom在一起工作表,Steve在另一个工作表中,Andy在另一个工作表中(基于工作角色)所以从这个表中我应该最终得到3个工作表。

我尝试过的一件事是if语句里面有一个vlookup:

Name     |     Job Role     |     Target
Jeff     |     Hunter       |      3000
steve    |     Farmer       |      2000
tom      |     Hunter       |      5000
andy     |     Combined     |      10000

这是我必须得到的最接近的东西。这个代码基本上会返回所有猎人的名字,当它在excel中被拖下来但它会留下我不想要的空白。我认为excel会有一些东西可以轻松做到这样的事情,但显然不是。如果没有VBA或过滤+复制和粘贴,有没有人知道解决这个问题的方法?

1 个答案:

答案 0 :(得分:1)

我能够在工作表2上使用=INDEX(Sheet1!A1:A4,MATCH("Hunter",Sheet1!B1:B4,0))来启用此工作(没有使用任何列标题)。缺点是,如果公式出现的次数超过了名称,它就会重复名称,但我认为hta可以用=IF()=COUNTIF()组合来解决(并且,嘿,没有空格) 。希望能为您提供所需的产品。

Reference to using =INDEX( ,MATCH( , , ))