更换,清洁和修剪VBA

时间:2018-10-25 07:54:08

标签: excel vba excel-vba

我正在尝试:

  1. 用单空格代替双空格。
  2. 清洁
  3. 修剪

我使用相同的字符串:

links

我想知道这三个VBA功能是否有特定顺序,或者该顺序在结果中不起作用。感谢帮助!

2 个答案:

答案 0 :(得分:5)

vba.trim不会删除双倍空格,只会删除前导/尾随空格。您需要工作表版本Application.Trim或WorksheetFunction.Trim删除临时双精度空格。

如果间距为三倍,则一次替换将为您留下一倍的间距。 Application.Trim不会。

您不希望Clean处理将要删除的字符(即空格),因此请先修剪。

如果没有货币或日期数据,

.Value2(不包含货币或日期信息)的处理速度会稍快;您有一个字符串,请使用.Value2。

AmountI = Application.Clean(Application.Trim(.Cells(j, 9).Value2))

答案 1 :(得分:0)

 AmountI = Trim(Replace(Application.WorksheetFunction.Clean(.Cells(j, 9).text), "  ", " "))

我的逻辑是:   1 .Text比.Value快   2清理可能会通过移除两个空间之间的非打印字符来封闭两个空间,因此请在执行此操作之前...   3用替换将双空格变为单空格,然后   4删除前导和尾随空格