2012-06-19 38 views
0

软件:Excel 2010Excel:连字符和空格

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

A股代码可能是

EY_20-DJ -   

即,连字符之前和达连字符后20位2位。关键是连字符不应该移动。 请记住,并非所有的库存商品都是这样的,只有少数。基本上只是需要删除尾部空格,不应在其中添加额外的空格“更正”。

我试过TRIM,它将连字符前的2个空格缩小为1,而CLEAN在这方面不做任何事情。

可能只是保持在一个公式中,或者我们需要走宏观路线吗?

任何意见赞赏!

回答

1

你应该尝试ASAP的工具:http://www.asap-utilities.com/ 有一堆宏,一个是去除之间或 我已经在许多Excel的练习中使用它,就像一个魅力

+0

感谢丹尼尔,但这必须作为自动报告的一部分运行。顺便说一句,我是ASAP Utilities的忠实粉丝! – hermanvn

+0

您也可以从您自己的代码中调用宏功能,但也许您不想让名称永久更改 –

+0

我会坚持这一点。 TX! – hermanvn

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

相关问题