相信很多人跟作者一样是 Excel 新手,处理复杂数据犯难。 直到遇到 Deepseek 和豆包,才发现 Excel 处理能如此轻松。

Excel是打工人的必备神器,但实话实说,对于“表哥”我是真的小白一个,平常遇到数据处理我是能用代码解决就用代码解决。

但今天我发现了新大陆——原来Deepseek还是处理Excel的高手。

下面我就把今天使用DeepSeek的心得体会毫无保留的分享给大家,看完有收获帮忙点个免费的赞。

让Deepseek写Excel公式

需求:

  1. 我要在E列显示出A列的项目名称——重复名项目称只显示一次
  2. F列显示对应E列数量最大值的名称(显示的名称在B列)
  3. G列显示C列对应的数量
    要是搁之前,我的第一想法肯定是用Golang写一个小工具来处理这个问题——但这是杀鸡用牛刀。
    我们来看看Deepseek是如何处理的:

1、打开Deepseek官网

https://chat.deepseek.com/

2、将表格传给Deepseek

不上传表格,截图上传也是一样的。

帮我写Excel公式,e列显示a列项目名称——从e2开始显示,并且同一个项目名称只显示一次
Deepseek深度思考了46s后给我了公式

我使用了方法2 ,这是一个通用兼容的公式。

这里还有一个注意点,原本我将公式复制后直接按回车键了,但这里是不行的,需要按组合键:Ctrl+Shift+Enter
其实上面Deepseek也提示了。

我想着用同样的方法处理F列和G列,但这时Deepseek罢工了~~~

不想在这等

我于是切换到豆包

豆包在F列给出的公式:

=INDEX($B:$B,MAX(IF($A:$A = $E2,IF($C:$C = MAX(IF($A:$A = $E2,$C:$C)),ROW($C:$C),""),"")))

在 G 列(显示对应的数量)输入公式:

=MAX(IF($A:$A = $E2,$C:$C))

改动ABC列数据,EFG列数据也是能联动的。perfect

视频演示:


生成图表

之前在别人的Excel中经常看到绚丽的图表,但是我不会做,这次我想做一个,于是我继续和豆包对话:

豆包给出的答案也挺详细的:


拆分Excel

比如我能不能按“项目”将这数据拆分出3个Excel??当然可以!

项目A的数据放到一个Excel,项目B的数据放到另一个Excel……

这边的数据需要拆分3个Excel。

数据量不多手动复制就可以了,但当数据量达到几千上万手动复制粘贴的方法肯定很容易出错,怎么办?

把数据扔给Deepseek,直接问!

经过Deepseek思考,它给出的方案:

以下是实现该需求的VBA代码,可以将数据按A列项目拆分保存为独立Excel文件

完整vba代码如下:

Sub SplitDataByProject()
    Dim ws As Worksheet
    Dim dict As Object
    Dim lastRow As Long
    Dim projectName As String
    Dim i As Long, r As Long
    Dim newWb As Workbook
    Dim newWs As Worksheet
    Dim headerRange As Range
    Dim dataRange As Range
    
    Set ws = ThisWorkbook.Sheets(1) ' 假设数据在第一个工作表
    Set dict = CreateObject("Scripting.Dictionary")
    lastRow = ws.Cells(ws.Rows.Count, "A").End(xlUp).Row
    
    ' 收集所有项目名称(去重)
    For i = 2 To lastRow
        projectName = ws.Cells(i, 1).Value
        If projectName <> "" And Not dict.exists(projectName) Then
            dict.Add projectName, Nothing
        End If
    Next i
    
    ' 设置标题行
    Set headerRange = ws.Range("A1:C1")
    
    ' 为每个项目创建独立文件
    For Each Key In dict.keys()
        ' 创建新工作簿
        Set newWb = Workbooks.Add
        Set newWs = newWb.Sheets(1)
        
        ' 复制标题
        headerRange.Copy newWs.Range("A1")
        
        ' 筛选并复制数据
        r = 2 ' 数据起始行
        For i = 2 To lastRow
            If ws.Cells(i, 1).Value = Key Then
                ws.Rows(i).Copy newWs.Rows(r)
                r = r + 1
            End If
        Next i
        
        ' 保存文件
        newWb.SaveAs Filename:=ThisWorkbook.Path & "\" & Key & ".xlsx"
        newWb.Close SaveChanges:=False
    Next Key
    
    MsgBox "拆分完成,共生成 " & dict.Count & " 个文件!"
End Sub

使用说明如下:

  1. 按 Alt+F11 打开VBA编辑器
  2. 在工程资源管理器中右键插入新模块
  3. 粘贴以上代码
  4. 确保:
  • 数据位于第一个工作表
  • 标题在A1:C1 (项目、名称、数量)
  • 数据从第2行开始
  1. 按 F5 运行宏

拆分成功


Deepseek 在 Excel 处理方面,展现出强大实力,帮我们化解办公难题。

希望本文分享能助力大家提升办公效率。
若你有所收获,点赞分享,让更多人知晓。

愿大家持续探索,挖掘工具更多潜能,让办公更高效 。

Logo

欢迎加入DeepSeek 技术社区。在这里,你可以找到志同道合的朋友,共同探索AI技术的奥秘。

更多推荐