分享

VBA程序:清除不可打印字符

 F2967527 2023-03-15 发布于北京

有时候,数据中包含着一些字符,这些字符会使某些数据无法使用。下面是excelbianalytics.com中提供的一个宏,按下列方式清理工作表:
1.删除ASCII代码为031的不可打印字符。
2.删除前导空格和尾随空格。
3.删除ASCII码为127129141143144157160的字符。
VBA代码如下:
Sub CleanUpData() Dim ws As Worksheet Dim rng As Range Dim cell As Range Dim ArrCodes Dim i As Long Set ws = ActiveSheet On Error Resume Next  Set rng = ws.UsedRange.SpecialCells(xlConstants, xlNumbers + xlTextValues) If rng Is Nothing Then Exit Sub End If On Error GoTo 0  ArrCodes = Array(127129141143144, 157160) Application.ScreenUpdating = False Application.Calculation = xlCalculationManual For Each cell In rng '使用CLEAN函数删除32个不可打印字符(0至31) 'Trim删除前导和尾随空格   cell = Trim(WorksheetFunction.Clean(cell))   '删除代码为127, 129, 141, 143, 144, 157, 160字符   For i = LBound(ArrCodes) To UBound(ArrCodes)     cell = Replace(cell, Chr(ArrCodes(i)), '') Next i Next cell Application.ScreenUpdating = True Application.Calculation = xlCalculationAutomaticEnd Sub

初学者提示:按Alt+F11打开VBE编辑器,插入一个标准模块,将上述代码复制该模块中,然后按F5键运行。

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多