0

我已经四处寻找这方面的指导,但我有点缺乏经验,所以可能错过了一些明显的东西 - 抱歉!

我希望能够转换一组类型而不是。以动态的方式将实例添加到这些实例的列表中,以便我可以更新实例的数量,并且列表会更新(填写新行)。

Type 1  |   0
Type 2  |   3
Type 3  |   2
Type 4  |   1

会回来

Project 1   |  Type 2
Project 2   |  Type 2
Project 3   |  Type 2
Project 4   |  Type 3
Project 5   |  Type 3
Project 6   |  Type 4

如果没有 VBA 是可能的,那就太好了。

理想情况下,它不会以数组的形式返回——尽管如果这样做也不是问题(尤其是如果这样做更简单的话)

我在想VBA中会定义一些函数,它返回一个数组,可以坐超过100行并随着实例数量的变化而填充?

它需要能够在没有时进行管理。实例更改例如类型 4 有 10 个实例,类型 2 没有实例

希望这很清楚,非常感谢您的帮助!

4

1 回答 1

0

您可以通过使用包含一些中间结果的帮助列在没有 VBA 的 Excel 中实现这一点。以下屏幕截图显示了它是如何工作的:

Excel 的屏幕截图,结果在 F 和 G 列中,从第 2 行开始

这是 Excel 的屏幕截图,以D为中间列,所需结果以列FG开始,从行开始2

1包含引导您的公式的起始值。列D中的单元格用作计数器。每当它达到零时,就会从 column 中的单元格中读取其新值BD2例如,单元格中的倒计时公式是

=IF(D1=0,INDIRECT("B"&(G1+2))-1,D1-1)

并且对于该列中的所有单元格都是相似的,行索引会自动调整。

列中的单元格G跟踪当前的类型编号,1每当列中的单元格D命中时,都会增加0G2例如,单元格的公式是

=IF(D1=0,G1+1,G1)

这可以满足您的需求……几乎。如果列B中的单元格的值为 ,则会出现障碍0。在这种情况下,您需要跳到下一个非零单元格。这可以做到,并且整个示例也可以稍微清理一下。但是,我不想在这方面花费太多精力,直到您实际对此答案做出了一些回应,证明您有兴趣自己学习一些更高级的 Excel 公式。

于 2012-07-19T06:18:39.353 回答