0

私は 6000 ページの PDF ファイルから変換された非常に大きな Excel シートを持っています。約 50 万行あるので、マニュアルはほとんど問題になりません。

これを使用可能なデータに変換する作業を行っていますが、抽出された行の一部に問題があります。

行は次のように抽出されているはずです。

Date       Text (Date Time TelNo Duration)                     
-----------------------------------------
01/05/2012 29.04.2012 18:31 07[removed]8 00:00:06 
01/05/2012 29.04.2012 18:32 07[removed]8 00:07:22 
01/05/2012 29.04.2012 19:54 07[removed]8 00:00:28 

方法はわかりませんが、約 10,000 行が次のようになりました。

Date       Text                     
-----------------------------------------
01/05/2012  29.04.2012 
01/05/2012  29.04.2012 
01/05/2012  29.04.2012 
01/05/2012  18:31 
01/05/2012  18:32 
01/05/2012  19:54 
01/05/2012  07[removed]8 
01/05/2012  07[removed]8 
01/05/2012  07[removed]8  
01/05/2012  00:00:06 
01/05/2012  00:07:22 
01/05/2012  00:00:28 

行を単一の行に再結合しようとしています(その後、再度分割します)。

私は次のことを試しましたが、3行のグループでしか機能しません:

   A           B                    C
------------------------------------------------------------------
1  01/05/2012   29.04.2012      =B1 & B4 & B7 & B10
2  01/05/2012   29.04.2012 
3  01/05/2012   29.04.2012 
4  01/05/2012   18:31 
5  01/05/2012   18:32 
6  01/05/2012   19:54 
7  01/05/2012   07[removed]8 
8  01/05/2012   07[removed]8 
9  01/05/2012   07[removed]8  
10 01/05/2012   00:00:06 
11 01/05/2012   00:07:22 
12 01/05/2012   00:00:28 

また、次のさまざまな組み合わせを試しました。

=B1&INDEX(B1:B10,MATCH("??:??",B1:B10,0))&INDEX....

値を組み合わせて、シート全体にドラッグ/コピーできる数式を作成できる人はいますか?

編集:

式は次のことを行う必要があります。

Time最初の行で、現在のセルの下の最初の値を見つけ、その後に最初Telnoと最初のDuration. 2 行目でTime、現在のセルの下にある 2 番目の値と、2 番目Telnoと 2番目の値を見つけますDuration

4

2 に答える 2

0

データを結合する前に「IF」をスローします。

=IF(MID(B1,3,1)=".",B1 & " " & B4 & " " & B7 & " " & B10,"")

列に分割することもできます。

時間という名前の列C

=IF(MID(B1,3,1)=".",B4,"")

TelNoという名前の列D

=IF(MID(B1,3,1)=".",B7,"")

期間という名前の列E

=IF(MID(B1,3,1)=".",B10,"")

いずれの場合も、列Cが空白の行をフィルタリングします。

于 2012-06-13T22:31:15.103 に答える
0

数式のみで問題を解決しました:

ステップ 1. 列を追加し、Mistypeif 式 (日付/時刻/数値など) を入力します。

NumMissedステップ 2.次の式を含む別の新しい列を追加しました。

=IF(D2="date",IF(AND(D2="date",D1<>"date"),MATCH("Time",D2:D20,0)-1,IF(D2="date",E1,"")),"")

これは、正しいセルを選択するために使用できる欠落した行の数を表示します。

ステップ 3. 次の式を使用して、取得した行を保持する別の列を追加しました (その後、他の式で分割できます)。

=IF(D2="date",B2&INDEX(B2:B80,E2)&INDEX(B2:B80,E2*2)&INDEX(B2:B80,E2*3)&IF(ISNUMBER(INDEX(B2:B80,E2*4)),INDEX(B2:B80,E2*4),""),"")

これにより、行の 99.9% のデータが得られます。最後の数行は手動で行うことができます。

于 2012-06-18T11:08:14.460 に答える