更换,清洁和修剪VBA

Err*_*004 3 excel vba excel-vba

我试着:

  1. 用单个替换双空格.
  2. 清洁
  3. 修剪

我使用相同的字符串:

AmountI = Replace(Application.WorksheetFunction.Clean(Trim(.Cells(j, 9).Value)), "  ", " ")
Run Code Online (Sandbox Code Playgroud)

我想知道这三个VBA函数是否有特定的顺序,或者订单在结果中没有任何作用.谢谢你的帮助!

小智 5

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

如果您有三倍间距,单个替换将为您留下双倍空格.Application.Trim不会.

你不希望Clean处理你要删除的字符(即空格),所以首先修剪.

当您没有货币或日期数据时,.Value2(没有货币或日期信息)处理速度稍快; 你有一个字符串所以使用.Value2.

AmountI = Application.Clean(Application.Trim(.Cells(j, 9).Value2))
Run Code Online (Sandbox Code Playgroud)