兰色每次讲新函数(WPS和office365版本新增)的用法,对于还在老版本的同学简直是一种折磨,想用却用不上。随着DeepSeek的横空出世,它可以帮你自动生成函数了。不仅如此,还可以生成你需要的连新版本都没有的函数。
兰色用DeepSeek编写了两个超牛的函数,一个是正则函数(新版本有),一个是按颜色求和函数(所有版本都没有)。
先演示效果,看两个公式。
1、提取数字和金额
=MyReg(B2,"[\d.]+",1)
2、按颜色求和
=SumByColor(E4,C4:C10)
平时我们很难解决,甚至无法解决的表格难题,竟然用很简短的公式搞定了。如果你也想使用这些新函数,就可以让DeepSeek帮你生成想要的任何函数。
以下为详细步骤:
1、打开官网
打开DeepSeek官方(https://www.deepseek.com/) 点击开始对话。
2、提出要求
把你想要的函数告诉它,一定要把要求写清楚。兰色总结的生成自定义函数的提问模板
模板1:
请帮我用VBA编写一个在excel中可以XXX的自定义函数,函数名XXX,参数1....参数2...参数3....。如果某个参数有几个选项,可以用值1XXX,值2XXX.....
模板2:
请帮我用VBA编写一个类似XXXXX函数的Excel自定义函数,
实例:
正则函数
按颜色求和函数
3、生成代码
按回车或点蓝色向上箭头,deepSeek就开始把思考过程和代码一行行显示在屏幕上。最后黑色背景的就是正式的VBA代码,点击复制。
自动生成的正则代码:
Function Myreg(StringValue As String, pattern As String, mode As Long) As Variant ' 创建正则表达式对象 Dim regex As Object Set regex = CreateObject("VBScript.RegExp") ' 设置正则表达式属性 regex.Global = True regex.IgnoreCase = False ' 根据模式执行不同的操作 Select Case mode Case 1 ' 提取 Dim matches As Object regex.pattern = pattern Set matches = regex.Execute(StringValue) ' 如果没有匹配项,返回空字符串 If matches.Count = 0 Then Myreg = "" Exit Function End If ' 将匹配项收集到数组中 Dim result As Variant ReDim result(1 To matches.Count) Dim i As Long For i = 1 To matches.Count result(i) = matches(i - 1).value Next i Myreg = result Case 2 ' 替换 ' 使用正则表达式替换匹配项 regex.pattern = pattern Myreg = regex.Replace(StringValue, "") Case 3 ' 判断 ' 检查字符串是否符合正则表达式 regex.pattern = pattern If regex.Test(StringValue) Then Myreg = True Else Myreg = False End If Case Else ' 无效模式,返回错误值 Myreg = CVErr(xlErrValue) End Select ' 清理对象 Set regex = NothingEnd Function
按条件求和代码
Function SumByColor(refCell As Range, sumRange As Range) As Variant ' 返回值类型设为Variant以支持错误值返回 ' 验证参考单元格是否为单个单元格 If refCell.Cells.Count > 1 Then SumByColor = CVErr(xlErrValue) Exit Function End If Dim sumColor As Long Dim total As Double Dim cell As Range ' 获取参考单元格的背景颜色 On Error Resume Next ' 防止无填充颜色时出错 sumColor = refCell.Interior.Color On Error GoTo 0 total = 0 ' 遍历求和区域 For Each cell In sumRange If cell.Interior.Color = sumColor Then If IsNumeric(cell.Value) Then total = total + cell.Value End If End If Next cell SumByColor = totalEnd Function
4、复制到Excel
打开要使用自定义函数的excel文件,开发工具 - Visual basic 打开VBE编辑器,插入 - 模块后把代码粘贴到右则的空白处,关闭新打开的VBE窗口。(WPS需要提前安装WPS VBA插件,网上可以搜到)
5、使用自定义函数
DeepSeek会贴心的提供参数说明,按说明在表格中就可以使用该函数了。
6、保存自定义函数
把文件另存为启用宏的工作簿,这个函数就永久保存在当前工作簿中了。如果其他工作簿也需要使用,按上面的步骤把代码复制过去也保存为该类型工作簿即可。
兰色说:Deepseek的确可以帮我们完成工作中不是太复杂的工作,这对很多excel新手小白,真是个福音。那么....有了它,我们还需要再费力的学excel吗?答案是需要,因为实际工作中很多表格结构很复杂,对于复杂的excel问题还是解决不了。特别是图表,兰色试了大部分AI,都无法完成复杂的图表制作。
领取专属 10元无门槛券
私享最新 技术干货