我的主键在F列中-4个长度的字符 我在X列中有实体名称-1到40个长度的字符
我需要将两列连接起来并在CD列中产生结果。
但列CD的长度应小于20个字符。 当总字符数大于20时,我的下面代码可以正常工作,但是当串联数小于20时,它将引发错误。
有人可以建议我要去哪里吗?
Range("CD1") = "Standard_Beneficiary"
For a = 2 To Cells(Rows.Count, "F").End(xlUp).Row
Cells(a, "CD").Value = Cells(a, "F").Value & "_" & Left(Cells(a, "X"), Len(Cells(a, "X").Value) - 10)
Next a
答案 0 :(得分:0)
Left(Cells(a, "X"),Len(Cells(a, "X").Value) - 10)
仅在Cells(a,"X").Value
的长度大于10个字符时起作用,否则,您希望从左侧开始的字符数为负,这当然是不可能的。
您可以使用if语句,也可以使用类似的
application.worksheetfunction.max(1,Len(Cells(a, "X").Value) - 10)
而不是Len(Cells(a, "X").Value) - 10
,以确保它始终是正数。