热点新闻
TRIM+测试删除空格
2023-10-17 09:11  浏览:756  搜索引擎搜索“手机财发网”
温馨提示:信息一旦丢失不一定找得到,请务必收藏信息以备急用!本站所有信息均是注册会员发布如遇到侵权请联系文章中的联系方式或客服删除!
联系我时,请说明是在手机财发网看到的信息,谢谢。
展会发布 展会网站大全 报名观展合作 软文发布

TRIM

Excel 中的 TRIM 函数旨在从文本中剪裁 7 位 ASCII 空格字符 (值 32) 。 在 Unicode 字符集中,有称为不间断空格字符的其他空格字符,其十进制值为 160。 此字符在网页中通常用作 HTML 实体  Trim 函数和 WorksheetFunction.Trim 方法本身不会删除此不中断空格字符。

Excel 中的 WorksheetFunction.Trim 方法不同于 VBA 中的 Trim 函数,后者仅删除前导空格和尾随空格。

使用VBA识别并删除电子表格中的不间断空格字符

识别不间断的空格字符
ChrW(&HA0)

删除空行

  • 删除空行,指删除 Word 文档中的纯文本中的空行,空行也叫空段、空白段落(表格中也有空行/空白段落,但表格与纯文本有区别,不在讨论范围),
    空行中一般含有四种空格:
    第1种是半角空格(在代码中用“ ”或“^32”或“chr(32)”表示),
    第2种是全角空格(在代码中用“ ”或“chr(-24159)”或
    “ChrW(12288)”表示),
    第3种是不间断空格(在代码中用“ ”或“^s”或“chrw(160)”表示),
    第4种是制表符(在代码中用“ ”或“^9”或“chr(9)”或“vbTab”表示)。
    正常情况下是看不到的,必须点击“显示/隐藏编辑标记”才可以看到。
    还有些不可见的空白字符或打印字符,一般很少遇到,可不必挂心。

测试删除空格

Option Explicit Sub ReplaceSpace() '去除不间断空格 Dim rng As Range Dim cell As Range ' 选择你想要替换的区域 Set rng = Application.Selection ' 遍历选定区域中的每个单元格 For Each cell In rng ' 检查单元格中的文本是否包含不间断空格 If InStr(cell.Value, ChrW(&HA0)) > 0 Then ' 如果包含不间断空格,则替换为普通空格 cell.Value = Replace(cell.Value, ChrW(&HA0), " ") End If Next cell End Sub Sub ReplaceSpace2() '去除不间断空格和全角空格 Dim rng As Range Dim cell As Range ' 选择你想要替换的区域 Set rng = Application.Selection ' 遍历选定区域中的每个单元格 For Each cell In rng ' 检查单元格中的文本是否包含不间断空格或全角空格 If InStr(cell.Value, ChrW(160)) > 0 Or InStr(cell.Value, ChrW(12288)) > 0 Then ' 如果包含不间断空格或全角空格,则替换为普通空格 cell.Value = Replace(Replace(cell.Value, ChrW(160), " "), ChrW(12288), " ") End If Next cell End Sub Sub ReplaceSpace3() '去除不间断空格和全角空格,并去除首尾的空格 Dim rng As Range Dim cell As Range ' 选择你想要替换的区域 Set rng = Application.Selection ' 遍历选定区域中的每个单元格 For Each cell In rng ' 检查单元格中的文本是否包含不间断空格或全角空格 If InStr(cell.Value, ChrW(160)) > 0 Or InStr(cell.Value, ChrW(12288)) > 0 Or InStr(cell.Value, Chr(32)) > 0 Then ' 如果包含不间断空格或全角空格,则替换为普通空格 cell.Value = Trim(Replace(Replace(cell.Value, ChrW(160), " "), ChrW(12288), " ")) End If Next cell End Sub Sub ReplaceSpace4() '去除不间断空格和全角空格,并去除首尾的空格和中间多余的空格 Dim rng As Range Dim cell As Range ' 选择你想要替换的区域 Set rng = Application.Selection ' 遍历选定区域中的每个单元格 For Each cell In rng ' 检查单元格中的文本是否包含不间断空格或全角空格 If InStr(cell.Value, ChrW(160)) > 0 Or InStr(cell.Value, ChrW(12288)) > 0 Or InStr(cell.Value, Chr(32)) > 0 Then ' 如果包含不间断空格或全角空格,则替换为普通空格 cell.Value = WorksheetFunction.Trim(Replace(Replace(cell.Value, ChrW(160), " "), ChrW(12288), " ")) End If Next cell End Sub 'Callback for customButton onAction Public Sub cBAction3(control As IRibbonControl) Call ReplaceSpace3 End Sub

发布人:e22d****    IP:117.173.23.***     举报/删稿
展会推荐
让朕来说2句
评论
收藏
点赞
转发