我有一个包含以下值的列:
646-900
634-645
611-633
589-610
and so on
我想首先反转每一行的范围,然后从2000中减去这些值,使它现在变为
1100-1354
1355-1366
1367-1389
1390-1411
我该如何编写公式?
答案 0 :(得分:2)
您可以使用以下内容:
=(2000-MID(A1,FIND("-",A1)+1,LEN(A1)))&"-"&(2000-LEFT(A1,FIND("-",A1)-1))
FIND("-",A1)
获取-
和MID
函数的LEFT
位置。使用-1
或+1
可以在LEFT
的情况下获取停止位置的位置,并分别在MID
的情况下从何处开始。 MID
获取文本的正确部分,而LEFT
获取文本的左侧部分。
从2000减去结果并将所有内容与&
连接起来。
答案 1 :(得分:2)
采用略有不同的方式。如果您的2000值可能会更改,请将其放在另一个单元格中并像这样引用它:(将公式放入C2并向下拖动,将2000放入C1中)
=($C$1-RIGHT(A2,LEN(A2)-FIND("-",A2))) & "-" & $C$1-LEFT(A2,FIND("-",A2)-1)
答案 2 :(得分:1)
你需要
解析单元格中的文本,FIND()
“ - ”char的位置
提取范围的每一边,使用LEFT()
和RIGHT()
函数。
转换为范围每边返回文本的VALUE()
从2000减去每个值
最后使用&
运算符将恢复顺序的结果连接起来(记得在它们之间插入“ - ”)。
答案 3 :(得分:1)
您需要对范围进行文本操作以获取下限和上限,执行减法,然后连接到新范围。您可以使用LEFT()
,RIGHT()
和FIND()
功能执行所有这些操作。
获取单元格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)
您现在可以创建一个新范围:
其中:
D2=B2&"-"&C2