用DeepSeek自动生成Excel新函数,什么正则、分类求和、颜色求和函数全有了......

职场   2025-02-07 09:12   河南  

兰色每次讲新函数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,都无法完成复杂的图表制作。

兰色根据多年经验,录制了一全套适合新手和初中级阶段用户学习的Excel教程。包括Excel表格90个函数用法、119个使用技巧、透视表从入门到精通50集、图表从入门到精通209集。(绿卡会员有效期内免费)详情点击下方链接:

Excel精英培训
每天一篇excel原创教程,由浅入深,全面学习excel技巧、函数、图表和VBA编程。有excel问题也可以提问哦!
 最新文章