vba - 工作簿和 vlookup 之间的 ms-Excel 工作表传输
问题描述
我有一个简单的问题(至少似乎是),我似乎无法找到一个好的解决方案:
我有 4 个工作簿,它们都包含两个确切的工作表(其余工作表对于每个工作簿都是唯一的)。我将这两个工作表存储在一个单独的工作簿中(所以第 5 个工作簿)。在这 2 个工作表中,其中 1 个是由许多表组成的数据表,我对其进行更新,另一个是名为 V 的工作表,它仅使用一些 vlookup 函数从该数据表中调出相关数据.
我正在尝试找到一种能够将此数据表传递给每个单独的工作簿的方法,而不是为每个工作簿(全部 4 个)单独编辑数据表。
我能够提出以下宏,它检查工作表是否已经存在,如果存在则将其删除。然后它打开 excel 文件的位置,将此工作表复制到工作簿,因此我拥有此数据工作表的最新版本。
Sub UpdateT()
Sheets("data").Visible = True
Dim wb As Workbook
Dim aw As Workbook
''Open 2nd Workbook
Set aw = Application.ActiveWorkbook
'Check if data worksheet exists, and if it does delete it
If Not GetWorksheet("data") Is Nothing Then
Application.DisplayAlerts = False
Worksheets("data").Delete
Application.DisplayAlerts = True
End If
'Check if T worksheet exists, and if it does, delete it
If Not GetWorksheet("T") Is Nothing Then
Application.DisplayAlerts = False
Worksheets("T").Delete
Application.DisplayAlerts = True
End If
Set wb = Workbooks.Open(Filename:="C:\Users\yilmadu001\Desktop\Update.xlsx")
'Copy To Different Workbook
wb.Sheets("data").Copy _
After:=aw.Sheets("Data1")
wb.Sheets("5120 TI").Copy _
After:=aw.Sheets("MENU5120")
'Close 2nd Workbook
aw.Save
wb.Close
'Hide the data worksheet
aw.Sheets("data").Visible = False
End Sub
'Function to check if worksheets exist
Function GetWorksheet(shtName As String) As Worksheet
On Error Resume Next
Set GetWorksheet = Worksheets(shtName)
End Function
问题如下:
传输新的 Data 工作表时,V 工作表不再使用 Vlookup 函数来指向相关信息。所以我想,好吧,如果我同时传输数据和 V 工作表怎么办,但这也行不通。
有没有办法在复制数据表时使用 Vlookup?(名称完全一样我不明白为什么它似乎无法指向表格的单元格)。它只是看起来很空白,无法指向任何东西。
注意:我没有改变数据表的格式,基本上只是值,所以格式是完全相同的。
重要的是要注意主要的 excel 工作簿(4 个)24/7 都在使用,因此我不能采取其他方式(从数据工作簿更新到主工作簿)。我必须“拉”更新的工作表而不是“推”。
如果有人有任何建议,我将不胜感激。谢谢你。
解决方案
推荐阅读
- javascript - 在d3 js中设置x时间轴的范围和域
- teamcity - 如何在没有常见工件、VCS 根或触发构建链的情况下为冒烟测试配置构建链?
- reactjs - 反应原生样式
- asp.net - 如何在 ASP.NET Core Razor 页面中使用路由中间件
- iis - 我将我的 ASP.NET Core 应用程序发布到本地 IIS 服务器,但它不是最新的。发生了什么?
- sql-server - SQL/SSIS 编码检测
- django-rest-framework - django-filter 不适用于 django-rest-framework
- c# - ListViewItem 中 Expander 未显示的内容
- python-3.x - 无法通过 selenium webdriver 从下拉菜单中选择选项
- avfoundation - 是否可以将 AVAudioRecorder 静音?