You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何修改VBA代码实现按指定工作表名跨工作簿提取数据

修改方案

核心是把代码中固定的工作表名称"Export"替换为Workbook A指定单元格中填写的工作表名称,具体操作如下:

  1. 先定义变量读取目标工作表名称(假设指定单元格是Workbook A里Sheet1的A1单元格,可根据实际位置调整):
Dim targetSheetName As String
targetSheetName = Workbooks("Workbook A.xlsm").Worksheets("Sheet1").Range("A1").Value
  1. 修改原代码行,用变量替代固定的工作表名称:
Workbooks("Workbook B.xlsm").Worksheets(targetSheetName).Range("A2:D9").Copy

额外优化建议

  • 确保Workbook A和Workbook B都处于打开状态,否则代码会触发错误
  • 可以添加表名存在性判断,避免因输入错误导致宏崩溃:
On Error Resume Next
Dim targetWs As Worksheet
Set targetWs = Workbooks("Workbook B.xlsm").Worksheets(targetSheetName)
On Error GoTo 0
If Not targetWs Is Nothing Then
    targetWs.Range("A2:D9").Copy
Else
    MsgBox "Workbook B中不存在名为「" & targetSheetName & "」的工作表"
End If

内容的提问来源于stack exchange,提问作者Carsten Høvsgaard

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.25 10:54:50