美文网首页
VBA-JC第8节|文本处理与复杂工作表汇总

VBA-JC第8节|文本处理与复杂工作表汇总

作者: 努力奋斗的durian | 来源:发表于2019-05-15 08:33 被阅读0次

    最近更新:'2019-05-15'

    1. 字符串函数
    2. For Each语句

    1. 字符串函数

    系统函数:vBA中内置的、已经编写好的函数,可以在自己的程序中随时调用,实现一些常用功能(如数学运算、文本处理等)

    1.1函数:Sqr(a)

    功能:计算并返回a的平方根

    Sub 数学函数示例()
        Dim a
        a = Sqr(5)
        MsgBox a
    
    End Sub
    

    1.2函数:Len(s)

    功能:返回字符串s的长度,即s中有多少字符(一个中文字符长度也为1)
    案例1:

    Sub 字符串函数示例()
        Dim a, s
        s = "大家好abc"
        a = Len(s)
        MsgBox a
    
    End Sub
    

    案例2:

    Sub 字符串函数示例()
        Dim a, s
        s = "  大家好abc  "
        a = Len(s)
        MsgBox a
    
    End Sub
    

    1.3函数:Trim(s)

    功能:返回一个新的字符串,该串的内容等于s去掉了两端的所有空格。

    Sub 字符串函数示例()
        Dim a, s
        s = "  大家好abc  "
        a = Trim(s)
        MsgBox "[" & a & "]"
    
    End Sub
    
    

    注意事项:
    1.trim(s)中的s没有发生任何的变化,两端仍然有空格.



    2.trim(s)中的s如果中间有空格,结果返回的只有两边的空格会消失,而中间空格还在.

    1.4函数: Replace(s,a,b)

    功能:返回一个新的字符串,该串的内容等于把s中所有的a都替换成b之后的样子。

    Sub 字符串函数示例()
        Dim a, s
        s = "  大家      好 abc  "
        a = Replace(s, " ", ",")
        MsgBox a
    
    End Sub
    
    

    1.5 函数:UCAse(s)和函数:LCase(s)

    函数:UCAse(s)
    功能:返回一个新的字符串,该串的内容等于把s中所有的英文字母都变成大写(其他字符不变)的样子。

    函数: LCase(s)
    功能:返回一个新的字符串,该串的内容等于把s中所有的英文字母都成小写(其他字符不变)的样子

    1.6函数: Right(s,a)

    功能:从s的右边取出a个字符,构成新的字符串并返回。

    Sub 字符串函数示例()
        Dim a, s
        s = "大家好abc"
        a = Right(s, 2)
        MsgBox a
    
    End Sub
    
    

    1.7函数:Left(s,a)

    功能:从s的左边取出a个字符,构成新的字符串并返回

    
    Sub 字符串函数示例()
        Dim a, s
        s = "大家好abc  "
        a = Left(s, 2)
        MsgBox a
    
    End Sub
    

    1.8函数:Mid(s,i,a)

    功能:从s的第i个字符开始,取出a个字符返回。

    Sub 字符串函数示例()
        Dim a, s
        s = "大家好abc"
        a = Mid(s, 1, 2)
        MsgBox a
    
    End Sub
    

    1.9函数:InStr(s,a)

    功能:在s中寻找a,如果找到则返回a出现的位置(第几个字符)如果没有找到则返回0。

    Sub 字符串函数示例()
        Dim a, s
        s = "吃葡萄不吐葡萄皮"
        a = InStr(s, "葡萄")
        MsgBox a
    
    End Sub
    

    函数:InStr(i,s,a)
    功能:在s中,从第i个字符开始寻找a,如果找到则返回a出现的位置(第几个字符)如果没有找到则返回0。

    
    Sub 字符串函数示例()
        Dim a, s
        s = "吃葡萄不吐葡萄皮"
        a = InStr(3, s, "葡萄")
        MsgBox a
    
    End Sub
    

    1.10综合案例:

    
    Sub test()
        s = "广渠路55号307室"
        
        路字 = InStr(s, "路")
        
        号字 = InStr(s, "号")
        
        Cells(2, 3) = Left(s, 路字)
        
        Cells(2, 4) = Mid(s, 路字 + 1, 号字 - 路字)
        
        Cells(2, 5) = Right(s, Len(s) - 号字)
    End Sub
    
    

    2. For Each语句


    常见的使用方法如下截图:



    案例:
    将4月,5月,6月的每个员工的业绩统一求和汇总在季度汇总表.如下截图:


    代码显示的最终结果如下

    相关文章

      网友评论

          本文标题:VBA-JC第8节|文本处理与复杂工作表汇总

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