我有一个简单的问题(至少似乎是),我似乎无法找到以下解决方案:
我有4个工作簿,每个工作簿都包含两个确切的工作表(其余工作表对于每个工作簿都是唯一的)。我将这两个工作表存储在单独的工作簿(第5个工作簿)中。在这两个工作表中,其中一个是由许多表组成的数据表,我对其进行更新,另一个是名为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
问题如下:
在转移了新的数据工作表后,V工作表不再与Vlookup函数配合使用以指向相对信息。所以我想,如果我同时传输数据表和V工作表,那该怎么办?
在复制数据表时,是否可以使用Vlookup? (名称完全相同,我不明白为什么它似乎无法指向表的单元格)。它只是一片空白,无法指向任何内容。
注意:我不是要更改数据表的格式,基本上只是更改值,所以格式是完全相同的。
可能要注意的是,主要的excel工作簿(第4个)正在使用24/7,因此我不能采用其他方法(从Data工作簿更新到主要工作簿)。我必须“拉”更新的工作表,而不是“推”。
如果有人有任何建议,我将不胜感激。谢谢。