VBA学习11_ 系统函数_For Each

系统函数

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

函数功能
len()返回一个字符串的长度
trim()返回一个新的字符串,该串的内容等于s去掉了两端的所有空格
Replace(s,a,b)返回一个新的字符串,该串的内容等于把 s 中所有的 a 都替换成 b 之后的样子
LCase()/UCase()转换大小写
Left(s,a)/Right(s,a)子串函数(一个字符串的一部分)
Mid(s,i,a)子串函数
Instr(i,s,a)在 s 中寻找a,如果找到则返回a出现的位置(第几个字符)如果没有返回则返回()

字符串分串

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

For Each 和 WorkSheet 对象

格式: For Each a In b      ⇒ 循环扫描b中的每一个元素,赋值给a
	  Next a

相当于:
	For i=1 to b.count
		a = b(i)
	Next i 
Sub 季度汇总()
	Dim i, k, name
	Dim w As WorkSheet,r As WorkSheet
	Set r = WorkSheets("季度汇总")
	For i = 3 To 10 '总表
		name = r.Cells(i,2)  ' 记录总表中的行数据 并准备去查找
		For Each w In workSheets ' 声明表对象
			If Right(w.name,1) = "月" Then '寻找月表
			k = 3
			Do While w.Cells(k,2) <> " "
				If LCase(Trim(w.Cells(k,2))) = LCase(Trim(name))
					For y = 3 To 6
						r.Cells(i,y) = r.Cells(i,y) + w.Cells(k,y)
					Next y			
				End If
			Loop
		Next w
	Next i
End Sub

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

pigerr杨

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值