先演示效果,看两个公式。
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 ObjectSet regex = CreateObject("VBScript.RegExp")' 设置正则表达式属性regex.Global = Trueregex.IgnoreCase = False' 根据模式执行不同的操作Select Case modeCase 1 ' 提取Dim matches As Objectregex.pattern = patternSet matches = regex.Execute(StringValue)' 如果没有匹配项,返回空字符串If matches.Count = 0 ThenMyreg = ""Exit FunctionEnd If' 将匹配项收集到数组中Dim result As VariantReDim result(1 To matches.Count)Dim i As LongFor i = 1 To matches.Countresult(i) = matches(i - 1).valueNext iMyreg = resultCase 2 ' 替换' 使用正则表达式替换匹配项regex.pattern = patternMyreg = regex.Replace(StringValue, "")Case 3 ' 判断' 检查字符串是否符合正则表达式regex.pattern = patternIf regex.Test(StringValue) ThenMyreg = TrueElseMyreg = FalseEnd IfCase 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、保存自定义函数
把文件另存为启用宏的工作簿,这个函数就永久保存在当前工作簿中了。如果其他工作簿也需要使用,按上面的步骤把代码复制过去也保存为该类型工作簿即可。