将TRIM更改为TRIM(替代) – macros
我有一个macros,修剪所有行中不必要的空格。 但是,而不是标准修剪,我想使用修剪(替代)function – 因为有时标准修剪function不适合我。 修剪和修剪(替代)之间的区别是
修剪:
TRIM =(A2)
TRIM(替补):
= TRIM(SUBSTITUTE(A4,CHAR(160),CHAR(32)))
我试图将修剪行中的代码更改为:
MyCell.Value = Trim(SUBSTITUTE(MyCell.Value,CHAR(160),CHAR(32)))
但不幸的是没有。 任何人都可以请帮我调整代码,使其工作?
我的微观macros
Sub GOOD_CT_TrimBText() Cells.Select Dim MyCell As Range On Error Resume Next Selection.Cells.SpecialCells(xlCellTypeConstants, 23).Select For Each MyCell In Selection.Cells MyCell.Value = Trim(MyCell.Value) Next On Error GoTo 0 End Sub
我不知道,你为什么要使用SUBSTITUTE
。 如果你想擦除string中的所有空格,那么你可以试试这个:
MyCell.Value = Replace(MyCell.Value, " ", vbNullString)
(注意:不要使用“Select”,它只会减慢macros观的速度,在大多数情况下是不必要的)
编辑:现在我知道,你的意思。 正如@KazJaw所说,你可以改变它:
MyCell.Value = Trim(Replace(MyCell.Value, Chr(160), Chr(32)))
我已经testing过它,它工作。
TRIM(SUBSTITUTE(I8,CHAR(160),CHAR(32)))*1