读取一个工作表并将数据加载到另一个工作表中,但不仅仅是作为参考

读取一个工作表并将数据加载到另一个工作表中,但不仅仅是作为参考

我有一份设备资产和属性列表,这是从数据库中转储的原始数据。在设备状态(如运行、待机等)或油位等属性中,它还包括标题和占位符等作为单独的记录行。这就是我在数据方面处理的内容。

我想用这些数据填充另一张表,方法是根据部分文本行和其他标准选择该信息。以下是我正在检查的单元格所包含内容的示例。

"\Hierarchy\P2 PROCESS DE-OIL\DE-OIL\DE-OILING D\BU-1002\P-1866A"

我要检查的是该文本行的“DE-OILING D”部分。这可能包括数百条记录,通过仅提取包含该部分文本的记录,我不会提取不需要的其他数百条记录。

现在我希望这可以通过函数实现。我知道我可以使用语句计算该数据列表中这些记录的数量COUNTSIF(此公式对我有用“=COUNTIF('DBASE SHEET'!B:B,A4)”)。所以我知道它可以被检测到,但就我而言,我无法弄清楚如何通过检查“De-Oiling D”文本作为条件参数来提取其他数据字段,然后根据该条件引用其他数据。

我尝试过index()indirect()vlookup(),它要么是完全不同的东西,要么是这些函数的组合。无论哪种方式,我似乎都无法让公式起作用。

现在还有另一个问题。一旦我检测到我想拉到新工作表的记录,我希望能够创建一个新数据的列表,但其中没有一大堆空白行。

记录样本用作|细胞分离器:

|\Hierarchy\P2 PROCESS DE-OIL\DE-OIL\DE-OILING C\P-1370 | NULL            |
|\Hierarchy\P2 PROCESS DE-OIL\DE-OIL\DE-OILING C\P-1370 | RUNNING STATUS  |
|\Hierarchy\P2 PROCESS DE-OIL\DE-OIL\DE-OILING C\P-1370 | OIL LEVEL       |
|\Hierarchy\P2 PROCESS DE-OIL\DE-OIL\DE-OILING C\P-1370 | SUCTION PRESSURE|
|\Hierarchy\P2 PROCESS DE-OIL\DE-OIL\DE-OILING D\P-1470 | NULL            |
|\Hierarchy\P2 PROCESS DE-OIL\DE-OIL\DE-OILING D\P-1470 | RUNNING STATUS  |
|\Hierarchy\P2 PROCESS DE-OIL\DE-OIL\DE-OILING D\P-1470 | OIL LEVEL       |
|\Hierarchy\P2 PROCESS DE-OIL\DE-OIL\DE-OILING D\P-1570 | NULL            |
|\Hierarchy\P2 PROCESS DE-OIL\DE-OIL\DE-OILING D\P-1570 | RUNNING STATUS  |
|\Hierarchy\P2 PROCESS DE-OIL\DE-OIL\DE-OILING D\P-1570 | OIL LEVEL       |

我希望输出的内容如下,不包含空格或任何类似内容:

|DE-OILING C | P-1370 | RUNNING STATUS  |
|DE-OILING C | P-1370 | OIL LEVEL       |
|DE-OILING C | P-1370 | SUCTION PRESSURE|
|DE-OILING D | P-1470 | RUNNING STATUS  |
|DE-OILING D | P-1470 | OIL LEVEL       |
|DE-OILING D | P-1570 | RUNNING STATUS  |
|DE-OILING D | P-1570 | OIL LEVEL       |

答案1

考虑 COUNTIFS() 语句是正确的。像比较数字一样对待文本字符串,使用 > 和 < 限定符检查每个字符串是否以您要查找的部分开头。

=COUNTIFS('DBASE SHEET'!B:B,">"&A4,'DBASE SHEET'!B:B,"<"&A5)

A4 包含你的

"\Hierarchy\P2 PROCESS DE-OIL\DE-OIL\DE-OILING D"

并且 A5 包含

"\Hierarchy\P2 PROCESS DE-OIL\DE-OIL\DE-OILING E"

如果你需要一个动态公式来自动填充 A5,请尝试

=LEFT(A4,LEN(A4)-1)&CHAR(CODE(RIGHT(A4,1))+1)

相关内容