将重复的Excel公式单元格引用重新集中到一个单元格引用中

有没有办法将Excel公式引用压缩到一个引用,同时保持公式包含到一个单元格?

为了参考我使用的公式是

=VALUE(SUBSTITUTE(RIGHT(G4,LEN(G4)- MIN(FIND({0,1,2,3,4,5,6,7,8,9},G4&"0123456789"))+1),"-",".")) 

哪些参考G4多次,我想要使它,所以我或另一个用户只需要在一个地方更改G4应该需要更改。

也许这样的事情(不是真正的Excelexpression式:)

 =MULTIPLEX(VALUE(SUBSTITUTE(RIGHT(#1,LEN(#1)- MIN(FIND({0,1,2,3,4,5,6,7,8,9},#1&"0123456789"))+1),"-",".")),#1,G4) 

因此,一旦更新整个公式,#1不需要改变并且G4被改变。

我试图避免VBA,这是一个用户友好的公式,我不会是唯一使用它。

注意,我的理论复用公式的实现将允许多重引用。 语法就像MULTIPLEX([formula],[ref1],[cell1],[ref2],[cell2],...)

侧面注意公式意味着从一个项目标识符中提取数字以便进行sorting。 ABC1234-1变成1234.1,所以我们可以按数字升序sorting。

假设数字部分最多9个字符(包括“ – ”),那么你可以使用这个公式来提取,它只引用G4一次

=LOOKUP(10^10,SUBSTITUTE(RIGHT(G4,{1,2,3,4,5,6,7,8,9}),"-",".")+0)