Note: The other languages of the website are Google-translated. Back to English

如何在Excel中使用/引用先前工作表中的值?

在Excel中创建副本时,如何引用上一个工作表中的特定单元格值? 例如,当创建Sheet2的副本时,您可能希望自动将Sheet1的单元格A2引用到新复制的工作表中(例如Sheet3)。 如何实现呢? 本文将为您提供帮助。

具有用户定义功能的先前工作表中的使用/参考值
在Kutools for Excel中使用/参考先前工作表中的值


具有用户定义功能的先前工作表中的使用/参考值

老实说,创建​​工作表副本时,没有方法可以自动引用某些单元格值。 实际上,您可以创建一个新工作表,然后使用以下用户定义的函数引用上一个工作表中的单元格值。

1.创建一个新的空白工作表(如Sheet3)后,请按 其他 + F11 按键同时打开 Microsoft Visual Basic应用程序 窗口。

2。 在里面 Microsoft Visual Basic应用程序 窗口中,单击 插页 > 模块。 然后将以下VBA代码复制并粘贴到“代码”窗口中。

VBA:Excel中以前工作表中的使用/引用值

Function PrevSheet(RCell As Range)
    Dim xIndex As Long
    Application.Volatile
    xIndex = RCell.Worksheet.Index
    If xIndex > 1 Then _
        PrevSheet = Worksheets(xIndex - 1).Range(RCell.Address)
End Function

3。 按 其他 + Q 同时关闭按键 Microsoft Visual Basic应用程序 窗口。

4.选择Sheet3的空白单元格(例如A1),输入公式 = PrevSheet(A1)配方栏 然后按 输入 键。

现在,您将在当前工作表中获得上一个工作表(Sheet1)的A2单元格值。

备注:该代码将自动识别属于当前工作表的上一个工作表。


在Kutools for Excel中使用/参考先前工作表中的值

随着 动态参考工作表 实用程序 Kutools for Excel,您可以轻松地使用或引用Excel中以前工作表中的值。

申请前 Kutools for Excel首先下载并安装.

1.如果要引用以前工作表中单元格A1的值到当前工作表,请在当前工作表中选择单元格A1,然后单击 库工具 > 更多 > 动态参考工作表。 看截图:

2。 在里面 填写工作表参考 对话框中,仅检查以前的工作表名称 工作表清单 框,然后单击 填充范围 按钮。

然后,您可以看到当前工作表中引用的上一个工作表中单元格A1的值。

备注:使用此实用程序,您可以一次将不同工作表中的相同单元格值引用到当前工作表中。

  如果您想免费试用(30-day) 这个实用程序, 请点击下载,然后按照上述步骤进行操作。


在Kutools for Excel中使用/参考先前工作表中的值


最佳办公效率工具

Kutools for Excel解决了您的大多数问题,并使您的生产率提高了80%

  • 重用: 快速插入 复杂的公式,图表 以及您以前使用过的任何东西; 加密单元 带密码 创建邮件列表 并发送电子邮件...
  • 超级公式栏 (轻松编辑多行文本和公式); 阅读版式 (轻松读取和编辑大量单元格); 粘贴到过滤范围...
  • 合并单元格/行/列 不会丢失数据; 拆分单元格内容; 合并重复的行/列...防止细胞重复; 比较范围...
  • 选择重复或唯一 行; 选择空白行 (所有单元格都是空的); 超级查找和模糊查找 在许多工作簿中; 随机选择...
  • 确切的副本 多个单元格,无需更改公式参考; 自动创建参考 到多张纸; 插入项目符号,复选框等...
  • 提取文字,添加文本,按位置删除, 删除空间; 创建和打印分页小计; 在单元格内容和注释之间转换...
  • 超级滤镜 (将过滤方案保存并应用于其他工作表); 高级排序 按月/周/日,频率及更多; 特殊过滤器 用粗体,斜体...
  • 结合工作簿和工作表; 根据关键列合并表; 将数据分割成多个工作表; 批量转换xls,xlsx和PDF...
  • 超过300种强大功能. 支持 Office / Excel 2007-2021 和 365。支持所有语言。 在您的企业或组织中轻松部署。 完整功能 30 天免费试用。 60 天退款保证。
kte选项卡201905

Office选项卡为Office带来了选项卡式界面,使您的工作更加轻松

  • 在Word,Excel,PowerPoint中启用选项卡式编辑和阅读,发布者,Access,Visio和Project。
  • 在同一窗口的新选项卡中而不是在新窗口中打开并创建多个文档。
  • 每天将您的工作效率提高50%,并减少数百次鼠标单击!
officetab底部
按评论排序
注释 (22)
还没有评分。 成为第一位评论!
该评论由网站上的主持人最小化
您好,我有一个问题请教专家。 我可以参考以前的工作表。 但我想在下一张纸的同一单元格的整个工作簿中继续重复该参考。 (即 D13) 示例:工作表 1 单元格 D13 在下一个工作表中重复,每张有 1 个增量值。 但是,如果我删除表 7 或任何其他表,我需要 excel 继续以相同的方式计数。 例如表 1 我从 100 表 20 开始,如果我删除几张表,我最终得到 119,我想确保引用自动更改而无需手动干预。 这意味着在我删除工作表后会自动更改 D13 上的引用。 感谢您的帮助。
该评论由网站上的主持人最小化
出色的工作和解释。 节省了我很多时间,非常感谢。
该评论由网站上的主持人最小化
我一直在寻找可以做到这一点的东西,非常感谢你不知道。 我有一个简单的电子表格用于每周输入数据,每周都有一个新标签。 日期、日期、周数等变为 +1,然后它从上一张表中抓取并移至新表,这为将数据传输到不同的表创建了一个快速解决方案 --- 再次感谢您
该评论由网站上的主持人最小化
美好的一天,
抱歉,我帮不上忙,您可以在我们的论坛中发布您的问题: https://www.extendoffice.com/forum.html 从我们的专业人员那里获得更多的 Excel 支持。
该评论由网站上的主持人最小化
Next Sheet 的使用价值如何?
该评论由网站上的主持人最小化
喜亚历克斯,
要从下一张表中获取值,请将代码第六行中的减号替换为加号:
PrevSheet = 工作表(xIndex + 1).Range(RCell.Address)
该评论由网站上的主持人最小化
嗨,水晶,我尝试用加号替换减号,但没有奏效 - 相关单元格只返回零。 我只是希望完全按照上面的方式进行所需的更改,但工作簿编号从右到左,即。 Sheet3,Sheet 2,Sheet1(上一张纸将是右边的一张)。 谢谢
该评论由网站上的主持人最小化
嗨,马夫,
该方法根据工作簿中的工作表顺序起作用。 IE。 工作表从左到右的顺序是 Sheet3、Sheet2 和 Sheet1。 对于 Sheet2,它的上一个工作表是 Sheet3,它的下一个工作表是 Sheet1。
该评论由网站上的主持人最小化
嗨水晶,
是的,我知道。 我的查询(如亚历克斯的)是需要进行哪些更改才能使其以另一种方式工作,即对于下一张纸,下一张纸在前一张纸的左侧? 你写信给亚历克斯,
"请将代码第六行中的减号替换为加号:
PrevSheet = Worksheets(xIndex + 1).Range(RCell.Address)"。
我的评论只是说该特定更改不起作用,并询问您是否有一种实际可行的方法。
该评论由网站上的主持人最小化
我按照步骤 1-4 进行操作,但我一直返回 #NAME? 错误 - 请告知?
该评论由网站上的主持人最小化
嗨安德鲁,
您使用哪个 Office 版本?
该评论由网站上的主持人最小化
我按照步骤 1-4 操作,但一直收到 #NAME 错误。 Excel 2016。请指教?
该评论由网站上的主持人最小化
嗨,Anon,
该代码在我的 Excel 2016 中运行良好。在获取 #NAME 错误结果时,您是否发现代码窗口中提示了特定错误?
该评论由网站上的主持人最小化
我尝试了代码,但它返回不允许的公式。 上一个工作表的单元格是公式的结果,请问如何绕过公式返回结果? 上一个工作表单元格返回 =SUM(L38:L39)-L40 的公式
该评论由网站上的主持人最小化
嗨 RudyT,我在你提到的情况下测试了它,但我在这里没有问题。 您使用的是哪个 Excel 版本?
该评论由网站上的主持人最小化
哇,那是 3 个月前的事了,但肯定感谢您的回复...

我不知道如何检查 Excel 365 ......问题是我有一个值,我想传递给新工作表,必须读取,获取前一个工作表的值而不命名它。 只需获取以前的工作表值。 您的代码传递上一张表的代码,而不是值。 因为单元格的值是一个从其他 2 个单元格收集总数的公式。
该评论由网站上的主持人最小化
太好了,我使用了以前的工作表函数,但是,如果我在以前的工作表中添加任何行或列,值会发生变化,我想要恒定的结果。 例如,如果我选择 =prevsheet(A6) 值所在的位置,但在上一张表中,如果我添加一行,则值将转到 A7,但在当前表中,它仅采用 A6 的值,你能帮我吗
该评论由网站上的主持人最小化
优秀的!!! VBA代码非常感谢
该评论由网站上的主持人最小化
非常非常感谢你! 很有帮助!
该评论由网站上的主持人最小化
嘿。

我正在使用安装了所有更新的 Greek Office 365,但无法正常运行。

它在我输入 =PrevSheet(A1) 的单元格处返回名称错误。

两张纸都有 vba 代码,文件另存为 .xlsb

有什么线索吗?
在此先感谢:)
该评论由网站上的主持人最小化
嗨索托斯,
您需要将 VBA 放在 模块(代码) 窗口(按 Alt + F11 键打开可视化编辑器,单击插入 > 模块以添加新的模块编辑器,然后输入代码)。 然后应用公式。
该评论由网站上的主持人最小化
您好,您的代码完美运行! 我的目的是在其中一张工作表上填写一列,以更新线性图。 我的问题是,如何添加在新工作表中输入的新数字,同时仍保持与之前工作表相同的数字。 例如,我在工作表 1 上输入 PrevSheet(A2),它从工作表 1 中获取 A1 单元格的编号。所以我转到工作表 2 的单元格 A2,并再次输入 PrevSheet(A1)。 目的是如果我复制并粘贴一个新工作表(我们称之为工作表 N),并且我用不同的值更新工作表 N 中的单元格 A1,工作表 2 将具有工作表 1 中单元格 A1 中的值,以及工作表中的值单元格 A1 中的单元格 A2 中的 N。 但是发生的事情是将工作表 1 中的单元格 A2 和 A2 更新为与工作表 N 中相同的值。这是有道理的,因为它采用了上一张工作表中的值。 希望我没有把你弄糊涂。 谢谢!
这里还没有评论
留下你的意见
以访客身份发帖
×
评价此帖子:
0   产品特性
建议地点

关注我们

版权所有 © 2009 - extendoffice.com。 | 版权所有。 供电 ExtendOffice。 | 网站地图
Microsoft和Office徽标是Microsoft Corporation在美国和/或其他国家的商标或注册商标。
受Sectigo SSL保护