Excel:连字符和空格

时间:2012-06-19 07:39:07

标签: excel hyphen

软件:Excel 2010

我的客户有各种格式的库存号码,我需要能够正确格式化所有代码。

股票代码可能是

EY_20-DJ  -           

即,连字符前有2个空格,连字符后最多有20个空格。关键是连字符不应该移动。 请记住,并非所有库存商品都是这样,只有少数。基本上只需要删除尾随空格,其间不应添加额外的间距。“

我尝试过TRIM,它将连字符前的2个空格减少为1,而CLEAN在这方面没有做任何事情。

可以将其保留在公式中,还是我们需要进行宏路径?

任何建议表示赞赏!

2 个答案:

答案 0 :(得分:1)

您应该尝试使用Asap Utilities:http://www.asap-utilities.com/ 有一堆宏,一个是删除之间或之后的空格 我在很多Excel练习中都使用过它,就像魅力一样

答案 1 :(得分:0)

这个用户定义的函数可以解决这个问题:

Function RTrimExcel(s As String) As String
    RTrimExcel = Rtrim(s)
End Function

这只是VBA Rtrim函数的一个包装,它完全符合您的要求。从Excel中调用=RTrimExcel(A1)

enter image description here

注意我如何为文本加下划线以使尾随空格可见。

请注意,这不是宏;这是一个用户定义的功能。你暗示你不想使用宏,但如果你想要完全没有VBA的东西,请告诉我们......这需要更多的思考!

修改

如果你的上一个非空格字符总是-,你可以使用这样的工作表公式来完成:

=LEFT(A1,FIND(CHAR(1),
    SUBSTITUTE(A1,$B$3,CHAR(1),LEN(A1)-LEN(SUBSTITUTE(A1,$B$3,"")))))

请注意,我将-存储在单元格B3中,因此很容易更改。

enter image description here