美文网首页
TRIM+测试删除空格

TRIM+测试删除空格

作者: 极客Geek | 来源:发表于2023-10-15 08:35 被阅读0次

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






Sub ReplaceSpace5()
'去除不间断空格和全角空格,并去除首尾的空格和中间多余的空格
    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 = Application.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


相关文章

  • 删除空格

    /** * 删除空格 * @param string $str * @return mixed */ functi...

  • 删除空格

    去除所有空格:str = str.replace(/\s+/g,"");去除两头空格:str = str.repl...

  • fortran实例_挑选LLJs

    Frotran 删除字符串空格 Trim 删除字符串结尾处的空格AdjustL 删除字符串开头的空格,左对齐Ad...

  • Markdown编辑器测试代码

    Markdown解析器测试代码 这个没有带空格 html标签下划线 换行测试 删除线 我们理解您需要更便捷更高效的...

  • 基础Markdown语法

    测试文章 二级标题 三级标题 四级标题 五级标题 这里是引用 粗体 这里没有空格斜体 这里没有空格删除线这里没有空...

  • 每日一练59——Java删除字符串空格(8kyu)

    题目 简单,从字符串中删除空格,然后返回结果字符串。 测试用例: 解题 后记 大家答案都差不多。

  • MySQL必知必会2

    创建计算字段 使用Concat()函数拼接字段 使用trim()删除左右侧多余的空格 RTrim()删除右边空格,...

  • swift 删除空格

    尾部空格可以去掉,中间的不行。

  • 删除全部空格

    public static function trimall($str){ $qian=array(" "...

  • Git 将两个提交合并为一个

    一、背景介绍?:某天组长帮你做Code Review,说你代码里多余的空格行可以删除了,并且添加个log,方便测试...

网友评论

      本文标题:TRIM+测试删除空格

      本文链接:https://www.haomeiwen.com/subject/nottidtx.html