データベースからの生データダンプである機器資産と属性のリストがあります。機器の状態(実行中、待機中など)やオイルレベルなどの属性には、ヘッダーやプレースホルダーなどのレコードも含まれます。それで、私はデータの観点から取り組んでいます。
このデータでやりたいことは、他の基準の中から部分的なテキスト行に基づいて選択することにより、別のシートにその情報を入力することです。以下は、私がチェックしているセルに含まれるもののサンプルです。
"\Hierarchy\P2 PROCESS DE-OIL\DE-OIL\DE-OILING D\BU-1002\P-1866A"
私がチェックするのは、そのテキスト行の「DE-OILING D」部分です。これには数百のレコードが含まれる可能性があり、その部分的なテキストのみでレコードをプルすることにより、必要のない他の数百のレコードをプルしません。
今、私はこれが機能で可能になることを望んでいます。COUNTSIF
ステートメントを使用して、そのデータリストにあるこれらのレコードの数をカウントできることを知っています(この式は、 "= COUNTIF( 'DBASE SHEET'!B:B、A4)"で機能します)。だから私はそれが検出できることを知っていますが、私の人生のために条件付き引数として「脱油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 |