如何从三个variablesbuild立复杂的价值?

我有一个超过2000个条目的Excel电子表格:

Field B1: CustomerID as 000012345 Field B2: CustomerID as 0000432 Field C1: CustomerCountry as DE Field C2: CustomerCountry as IT 

我需要build立13位长的代码,包括“CustomerCountry”+“CustomerID”,而不需要前导0 +随机数 (可以是6位数,或多或less,取决于CustomerID长度)。

结果应该是这样的:D1代码为DE12345967895或D2代码为IT43274837401

如何用Excel函数做到这一点?

更新:我试过这个。 我的大问题是说随机数应该足够长,总共可以得到13个字符。 有时CustomerID只有3或4位数字,三个variables的连接可能只有10或9个字符。 但是代码必须总是13个字符。

在这里输入图像描述

使用&连接string。

使用VALUE(CustomerID)从ID修剪前导零

使用RAND()添加一个介于0和1之间的随机数,或使用RANDBETWEEN(x,y)在x和y之间创build一个。

结合上述和你在那里!

如果您总是需要13位数字,您可以使用LEFT(INT(RAND()*10^13);(13-LEN(CustomerCountry)-LEN(VALUE(CustomerID))))随机数始终是正确的长度。

总配方

 = CustomerCountry & VALUE(CustomerID) & LEFT(INT(RAND()*10^13);(13-LEN(CustomerCountry)-LEN(VALUE(CustomerID)))) 

=C1 & TEXT(B1,"0") & RIGHT(TEXT(RANDBETWEEN(0,99999999999),"00000000000"),11 - LEN(TEXT(B1,"0")))

应该这样做

我不明白什么地方和OP已经接受了答案,所以没有打扰testing:

 =LEFT(RIGHT(C1,2)&VALUE(MID(B1,15,13))&RANDBETWEEN(10^9,10^10),13) 

(但如果没有其他人首先挑出它的缺陷,我可能会回到这个问题!)