用括号分隔一些值,并将一个数字从一列减少到另一列

时间:2015-03-09 22:37:58

标签: excel excel-vba excel-formula worksheet-function substitution vba

我在不同的列中输入了这些值:

First column   Second Column    Third column
72              54,72            35,43
63              63,70,74         41
39              32,39,49         51

从这张表中我需要一个这样的输出:

First_output   Second_output      Third_output
50              54,35,43          [50,54][54][35,43]
50              70,74,41          [50,70,74][70,74][41]
50              32,49,51          [50,32,49][32,49][51]

First_output我使用if(第一列> 100,第一列,50),
 second_output和third_output对我来说有点头疼,我尝试过连接的东西,但我不能为不同的场景摆脱First列。

规则:

  • First_output将成为50而不是72,63,39
  • Second_output将成为第二列和第三列连接 但没有第一栏中的数字(即72,63,39)
  • Third_output将成为括号:第一个括号包含第二个 专栏,但正如我所说,72,63,39将成为50,这就是我的原因 这些数字,第二个括号包含相同的数字而没有50,第三个括号包含第三列。

1 个答案:

答案 0 :(得分:0)

假设First column在A1中,而不在VBA中,在D2中:

50  
在E2中

=SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(B2&","&C2,A2,","),",,,",","),",,","")  
在F2中

=SUBSTITUTE(SUBSTITUTE(SUBSTITUTE("[50,"&SUBSTITUTE(B2,A2,"")&"]["&SUBSTITUTE(B2,A2,"")&"]["&C2&"]",",,",","),",]","]"),"[,","[")  

并将所有三个复制到适合的地方。