excel - 在 Excel 中从一个工作簿复制到另一个工作簿并将单元格数据复制到另一个工作簿
问题描述
我需要在第二个工作簿上找到一个特定的单元格并返回它的值。我的范围总是在变化,但我可以过滤掉不好的值。我需要从一个工作簿复制到另一个工作簿的单元格(MCN #)正在改变其格式。
有时它是单行,有时它合并超过 7 行左右。我拥有的代码是:
=HLOOKUP("MCN #",[CuPe1810_CH520.xlsx]CuPe1820_CH520!$A$1:$S$16,2,FALSE)
我正在从链接的工作簿中寻找“MCN #”,并返回我在主工作簿上分配给它的行值 (B3)。
我需要从用户输入值更改 [CuPe1810_CH520.xlsx],并且我需要将选项卡或范围 (CuPe1820_CH520!$A$1:$S$16) 更改为相同的名称减去 .xlsx 所以在我的示例中CuPe1820_CH520 将代表一个选项卡名称和一个 .xlsx 名称。我需要帮助才能根据用户输入使其工作,并且可以完成公式或宏,我不在乎。
解决方案
你可以做这样的事情。
在下面的示例中,F1
(或$F$1
短代码)是您正在编辑以更新公式的单元格。
A1
是我们正在更新的单元格公式。
如果您需要更新多个单元格,则可以循环遍历它们For Each
,也可以使用该Range("SomeRange").AutoFill Destination:=Range("SomeDestination")
函数。
Application.ActiveWorkbook.Path
在您的情况下可能需要更新 - 指向文件的路径。
这进入您的工作表对象(Worksheet_Change
事件)。
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$F$1" Then
'Range to update formula goes here
Range("A1").Formula = "='" & Application.ActiveWorkbook.Path & "\[" & [F1] & ".xlsx]" & [F1] & "'!A1"
End If
End Sub
在上面的示例中,您不需要.xlsx
输入输入字符串。
推荐阅读
- django - 带有自定义错误消息的 Django 重定向
- postgresql - Dockerized Postgresql 无法访问自定义映像上的 postgresql.conf
- javascript - 猫头鹰旋转木马的背景图像不起作用
- c# - 删除旧关系并在 c# 上的同一查询中创建具有相同标签的新关系,使用 cypher for neo4j DB
- java - 在 Google 日历上更新事件会自动将 EventAtendee 设置为 self
- wpf - 如何在 Prism WPF 应用程序中实现 Serilog?
- python-3.x - SyntaxError: 第 1 行文件 .\score_python.exe 中以 '\x90' 开头的非 UTF-8 代码,但未声明编码;
- swift - 在手动导入的 SDK 中导入 Alamofire
- amazon-web-services - 如何在 Amazon Lex 中使用单个话语调用多个意图?
- xml - 通过 XML 和 XSL(i18n 上下文)生成 HTML 页面的问题