请喜欢我第一季百度云:EXCEL文件中一次性把里面所有数字前的空格去掉

来源:百度文库 编辑:九乡新闻网 时间:2024/04/24 03:06:12
Sub aTest() 
    Dim s As String 
    Dim a As Byte 
    Dim x1 As Integer 
    Dim rng As Range 
    Dim c 
     
    x1 = Sheets("sheet1").[d65536].End(xlUp).Row '取得D行最后一个非空行 
    Set rng = Sheets("sheet1").Cells(1, 4).Resize(x1, 6)  '设定范围 
    For Each c In rng '在选定的范围循环 
        a = Asc(Mid(c.Value, 1, 1)) '取单元格字符串的第一个字符 
        If a < 48 Or a > 57 Then '判断是否为数字,(Ascii码 0=48 ,9=57) 
            a = Len(c.Value) '如果不是数字,取单元格字符长度 
            c.Value = Mid(c.Value, 2, a - 1) '去掉第一个非数字字符 
        End If 
    Next c 
End Sub
  B(1)=trim(A(1)),删掉前导空格 

大家在处理Excel表格时,经常会碰到一个问题,就是发现有多出来的格空.

当然,如果有种情况是所有的空格都是多出来的,这种情况非常好办,直接将空格替换为空就OK了.但是有的时候如果只是一部分空格是多出来的,比如说仅仅只是前面,后面或者前后的空格是多余的,中间的空格是有用的,那么就不能用替换的方法的.

如果这种情况只是几个,那没关系,可以手工来做.如果是一列,两列,N列…..那怎么办呢?这个时间就要用到很重要的一个函数”Trim

Trim:去除单元格两端的空格

RTrim:去除单元格右端的空格

LTrim:去除单元格左端的空格

函数使用方法:

=Trim(“test”)

比如要去列A列中的两端空格,首先在X列中打入函数”=Trim(“,然后点击A列中对应的单元格,然后再加个“)”回车,好的,这样X列中就有了A列中对应单元格数据的去掉空格后的数据。然后双击X列中改好的那个单元格右下角,A列中数据全部更改过来。

RTrim、LTrim函数用法同上!