专栏名称: 完美Excel
Excel与VBA技术学习与实践
目录
相关文章推荐
完美Excel  ·  让deepseek实现在Excel工作表中自 ... ·  昨天  
完美Excel  ·  Excel又来新东西了!TRIMRANGE函 ... ·  3 天前  
完美Excel  ·  技巧:MODE函数判断列表数据是否唯一 ·  2 天前  
51好读  ›  专栏  ›  完美Excel

让deepseek实现在Excel工作表中自动替换行

完美Excel  · 公众号  · Excel  · 2025-03-21 06:00

正文

学习Excel技术,关注微信公众号:
excelperfect

标签: AI-Excel deepseek VBA

在前面推出的文章《 自定义函数:替换行 》中,我们使用 LAMBDA 自定义函数实现让指定的数据行替换数据区域中指定的行。现在,我想看看 deepseek 是怎么用 LAMBDA 函数实现的,并且我还要 deepseek VBA 实现同样的功能。

示例工作表如下图 1 所示。

图形用户界面, 应用程序, 表格, Excel

AI 生成的内容可能不正确。

1

我将包含该工作表的工作簿上传作为附件,并向 deepseek 提问:

我想使用指定的数据行替换数据区域中指定行,示例如附件中 Excel 工作表数据,使用 A5:C5 替换掉单元格区域 A1:C3 中的第 2 行,结果如 A7:C9 所示。要求分别使用下列方式实现: 1. 使用 LAMBDA 自定义函数来实现; 2. 使用 VBA 实现。

如下图 2 所示。

图形用户界面, 文本, 应用程序, 电子邮件

AI 生成的内容可能不正确。

2

deepseek 很快给出了令人满意的答案。

方法 1 :使用 LAMBDA 自定义函数实现

Ctrl+F3 调出“新建名称”对话框,定义名称如下:

名称: ReplaeRow

引用位置:

=LAMBDA(original_range,replace_row,target_row,   MAKEARRAY(     ROWS(original_range),     COLUMNS(original_range),     LAMBDA(r,c,       IF(         r=target_row,         INDEX(replace_row,1,c),         INDEX(original_range,r,c)       )     )   ))

如下图 3 所示。

图形用户界面, 文本, 应用程序

AI 生成的内容可能不正确。

3

在单元格 A7 中输入公式:

=ReplaceRow(A1:C3, A5:C5, 2)

结果如下图 4 所示。

表格

AI 生成的内容可能不正确。

4

方法 2 :使用 VBA 实现

Alt+F11 打开 VBE ,插入一个标准模块,输入代码:

Sub ReplaceRowVBA(originalRange As Range






请到「今天看啥」查看全文