2017-09-01 62 views
1

我试图创建一个重复特定次数的基础上,另外一个变量名的列表。基本上,如果我有以下几点:Excel中返回的项目清单与特定的重复

Column A Column B 
Amy   5 
John   2 
Carl   3 

的结果将是:

  • 艾米
  • 艾米
  • 艾米
  • 艾米
  • 艾米
  • 卡尔
  • 卡尔
  • 卡尔
  • 约翰
  • 约翰

我已经建立了使用指数小COUNTIF,方法,得到一个字母和独特的名单初步名单,然后另一个公式以确定有多少每个项目重复一次。我知道我需要使用某种索引/偏移来引用行,但不能完全解决它。

该列表是动态的,每天都会更改,因此每天手动重新输入列表会导致太多的人为错误和时间(列表大约有50个不同的项目,最终的行总数大约为400)。最终,该列表将用于许多sumproduct/vlookups。

我可以在VBA很快做到这一点,但该文件的用户并不总是信任VBA,并试图让他们每次启用宏是不是去上班的东西。

非常感谢您对您可以提供任何帮助!

+0

获得新用​​户?这是一个选择吗? – JNevill

+0

有时我真的很希望它是... – mjohnson

回答

1

根据您的表:

+---+------+---+ 
| | A | B | 
+---+------+---+ 
| 1 | Amy | 5 | 
| 2 | John | 2 | 
| 3 | Carl | 3 | 
+---+------+---+ 

在C列中坚持一个 “0”,在C4和公式=B1+C2复制到之前的0:

+---+------+---+----+ 
| | A | B | C | 
+---+------+---+----+ 
| 1 | Amy | 5 | 10 | 
| 2 | John | 2 | 5 | 
| 3 | Carl | 3 | 3 | 
| 4 |  | | 0 | 
+---+------+---+----+ 

现在我们有一个上限的每个值应置于其上,我们可以在一个Match()公式,将饲料的Index()式使用的行。

在新的一列(我使用的是E)的E1:=INDEX($A$1:$A$3,MATCH(ROW(),$C$1:$C$3,-1),1)抄下

+----+------+---+----+--+------+ 
| | A | B | C | D | E | 
+----+------+---+----+--+------+ 
| 1 | Amy | 5 | 10 | | Carl | 
| 2 | John | 2 | 5 | | Carl | 
| 3 | Carl | 3 | 3 | | Carl | 
| 4 |  | | 0 | | John | 
| 5 |  | | | | John | 
| 6 |  | | | | Amy | 
| 7 |  | | | | Amy | 
| 8 |  | | | | Amy | 
| 9 |  | | | | Amy | 
| 10 |  | | | | Amy | 
+----+------+---+----+--+------+ 

这份名单是倒退,因为这古怪的向后从0件事,我们在C列这样做是为了使Match()最后一个参数-1(大于)正常工作。

我会做一些调整可以这样做干净了一点想象,但是这应该让你在球场。

虽然我仍然会寻找谁是能够使宏的用户的一大支持者。啊。

+0

令人惊叹!非常感谢你!我调整了一下,以正确的顺序。基本上总结了列B,然后我调整匹配部分= ....匹配(SUM(B:B) - 行(),... – mjohnson

+1

是的!这很有道理,这不是它错了但它感觉必须有一个简单的方法来翻转它,在几分钟内我放弃了这个问题两次,但它一直在困扰着我,所以当我(向后)破解它时,我并没有不会冒重构风险。 – JNevill