Excel解析和转换文本

时间:2009-08-19 01:23:34

标签: excel parsing text-manipulation

我需要能够根据以下规则将单元格从一种格式转换为另一种格式:

Property Description    --enter as--    Folio Identifier
----------------------------------------------------------
Lot 23 DP789678                         23/789678
Lot 7 Section 12 DP6789                 7/12/6789
Lot 1 SP 45676                          1/SP45676
Common Property Title SP45676           CP/SP45676
Volume 7456 Folio 56                    7456-56
Auto-Consol 5674-78                     5674-78
Water Access Licence No. 123            WAL123 

所以左边的东西必须改成右边的项目。例如,如果我有任何看起来像Lot 23 DP789678的单元格,则必须将它们转换为Lot 23 DP789678。如何为上述所有情况编写一个公式?

2 个答案:

答案 0 :(得分:1)

我有一个适合你的公式。唯一的问题是我无法将其放入一个单元格中。它太大了,Excel抱怨它。 所以必须分两步完成。 A1包含您的原始文本。 D1将包含中间结果(如果需要,可以隐藏此列) E1将包含最终结果。

D1的公式:

=SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(A1, "Lot ", ""), "Section ", ""), "SP ", "SP"), "Common Property Title", "CP"), "Volume ", ""), "Auto-Consol ", ""), "Water Access Licence No. ", "WAL"), " Folio ","-")

E1的公式:

=SUBSTITUTE(D1, " ", "/")

答案 1 :(得分:0)

您可以使用MATCH和INDEX功能。假设属性描述 Folio标识符分别位于A1:A7和B1:B7列中,要替换的字符串是A12,那么让B12为:

=INDEX(B1:B7,MATCH(A12,A1:A7,0))

E.g。

                A                          B
1   Lot 23 DP789678                 23/789678
2   Lot 7 Section 12 DP6789         07/12/89
3   Lot 1 SP 45676                  1/SP45676
4   Common Property Title SP45676   CP/SP45676
5   Volume 7456 Folio 56            7456-56
6   Auto-Consol 5674-78             5674-78
7   Water Access Licence No. 123    WAL123
8       
9       
10      
11      
12  Lot 23 DP789678                 23/789678
13  Common Property Title SP45676   CP/SP45676
14  Water Access Licence No. 123    WAL123
15  Water Access Licence No. 123    WAL123