【发布时间】:2014-03-05 13:39:00
【问题描述】:
| A | B | C | D | E | F | G |
+------------------+------+------------+-------+-------+-------+-------+
| | | Allocation | Alloc | Alloc | Alloc | Alloc |
1 | Name/Class | FTE | All | ADM | ECE | HS | LS |
+==================+======+============+=======+=======+=======+=======+
2 | Smith, James | 0.88 | 100% | 100% | 0% | 0% | 0% |
3 | ADM: Class 230 | 0.88 | 100% | | | | |
4 | Doe, Jill | 1.00 | 100% | 0% | 100% | 0% | 0% |
5 | ECE: Class 112 | 1.00 | 100% | | | | |
6 | Marx, Karl | 0.85 | 100% | 0% | 0% | 24% | 76% |
7 | HS: Class 004 | 0.10 | 12% | | | | |
8 | HS: Class 018 | 0.10 | 12% | | | | |
9 | LS: Class 230 | 0.30 | 35% | | | | |
10| LS: Class 235 | 0.35 | 41% | | | | |
11| Bush, George | 0.50 | 100% | 0% | 40% | 40% | 20% |
12| ECE: Class 120 | 0.15 | 30% | | | | |
13| ECE: Class 123 | 0.05 | 10% | | | | |
14| HS: Class 670 | 0.20 | 40% | | | | |
15| LS: Class 580 | 0.10 | 20% | | | | |
16| TBH, FacultyHS | 0.29 | 100% | 0% | 0% | 100% | 0% |
17| HS: Class 912 | 0.29 | 100% | | | | |
18| Tell, William | 1.00 | 100% | … | … | … | … |
19| [etc]
我需要关于列 C 到 G 的公式的帮助...
我有一个七列的表,其中列 A 和 B 是硬数据,需要计算 C:G。
Col A 有一个名称和类的列表。模式是名称后跟可变数量的类。可靠地确定该值是名称还是类的唯一方法是存在冒号 (:)。
有四种班级类型,ADM、ECE、HS 和 LS。在每个名称下,可以有任意数量的给定类类型,以及四种类类型的任意组合。例如,在给定名称下,可能存在三种“HS”类类型和一种“ECE”类类型等。
B 列包含一个数值。如果该行是名称,则数值是紧接其下的类的总和。
我需要创建一个列 C、D、E、F、G 如下:
- Col C('Allocation All'):如果该行是名称,则分配为 100%。如果该行是一个类,则分配是该类 FTE(列 B)与父名称(列 B)的 FTE 总数的百分比;
- Col D ('Allocation ADM'):如果该行是一个名称,则此单元格是紧接在此名称下方的所有 'ADM:...' 类的总和的百分比;
- Col D('Allocation ADM'):如果该行是一个类,则单元格为空白;
- Col E('Allocation ECE'):与 Col D 相同,但 'ECE:...' 类除外;
- Col F('Allocation HS'):与 Col D 相同,但 'HS:...' 类除外;
- Col G('Allocation LS'):与 Col D 相同,但 'LS:...' 类除外
例如,请注意 D2 (ADM) = C3,F6 (HS) = C7+C8 等。
对于任何给定的名称行,列 D:G 的总和将始终为 100%。
任何帮助将不胜感激!
【问题讨论】:
标签: variables excel-formula string-parsing range