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函数用法同上! |
|