2013-12-11 114 views
1

的我有一個包含下列值的列:從範圍中減去2000的值

646-900 
634-645 
611-633 
589-610 
and so on 

欲第一扭轉每行中的範圍,然後從2000中減去的值,以便它現在變成

1100-1354 
1355-1366 
1367-1389 
1390-1411 

我該如何編寫公式?

回答

2

您可以使用這樣的事情:

=(2000-MID(A1,FIND("-",A1)+1,LEN(A1)))&"-"&(2000-LEFT(A1,FIND("-",A1)-1)) 

FIND("-",A1)得到-MIDLEFT功能的位置。使用-1+1可分別獲得LEFT的情況下停止的位置和MID的情況下的停止位置。 MID獲取文本的右側部分,而LEFT獲取文本的左側部分。

從2000中減去結果並將所有內容連接回&

+0

運作良好。謝謝 – CuriousDev

1

您需要

  1. 解析在你的細胞中的文字,FIND()的位置「 - 」字符

  2. 提取範圍的兩側,使用LEFT()RIGHT()功能。

  3. 變換爲VALUE()範圍的每一側的返回的文本

  4. 從2000減去每個值

  5. 最後串接在恢復順序的結果與&操作者(記得要插入一個「 -「 它們之間)。

+1

= 2000-MID(A1,FIND( 「 - 」,A1)1100) 「 - 」 &2000-LEFT( A1,FIND(「 - 」,A1)-1) –

+3

我知道,謝謝。試圖激勵OP自己嘗試。 –

+0

+1爲動機 – CuriousDev

2

稍微不同的方法來做到這一點。如果你的2000價值可能會改變把它在另一個單元格,並像這樣引用它:(把公式中的C2和向下拖動,把2000年在C1)

=($C$1-RIGHT(A2,LEN(A2)-FIND("-",A2))) & "-" & $C$1-LEFT(A2,FIND("-",A2)-1) 

enter image description here

1

你需要做文本處理在範圍內獲得下限和上限,執行減法,然後連接到新的範圍。您可以使用功能LEFT()RIGHT()和來完成所有這些工作。

要得到下界字符串的單元格A1:

LEFT(A1, FIND("-",A1)-1) 

要獲得上限字符串的單元格A1:

RIGHT(A1, LEN(A1) - FIND("-", A1)) 

您可以簡單地從2000減去這些來得到範圍:

lower: 2000-RIGHT(A1, LEN(A1) - FIND("-", A1)) 

and 

upper: 2000-LEFT(A1, FIND("-",A1)-1) 

您CA Ñ立即建立新的範圍:

Excel Table

其中:

D2=B2&"-"&C2