我试图:
相同的字符串,我使用:
AmountI = Replace(Application.WorksheetFunction.Clean(Trim(.Cells(j, 9).Value)), " ", " ")
我想知道这三个VBA函数是否有特定的顺序或者顺序对结果没有任何作用。谢谢你的帮助!
最佳答案
vba.trim 不会删除双倍间距,只会删除前导/尾随空格。您需要工作表版本 Application.Trim 或 WorksheetFunction.Trim 来删除中间双空格。
如果您有三倍间距,则单个 Replace 将为您留下双倍间距。 Application.Trim 不会。
您不希望 Clean 处理您无论如何都要删除的字符(即空格),因此请先修剪。
当您没有货币或日期数据时,.Value2(没有货币或日期信息)的处理速度会稍快一些;你有一个字符串,所以使用 .Value2。
AmountI = Application.Clean(Application.Trim(.Cells(j, 9).Value2))
关于excel - 更换、清洁和修剪 VBA,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/52984121/