将单元格链接到以前的工作簿

如果我还可以问:我有cashup文件,有一定的联系..十二月从一些细胞在11月的信息。 是否有可能,当我打开十二月自动收集链接从十一月与出去不得不改变“= +”C:\商店\ Fego Caffe Irene \ Cash Ups \ 2011 [Fego Caffe June 2011.xlsm]每日故障'!$ 42美元“每次我节省一个新的一个月。 所以如果我创build一月份的文件,它必须自动链接​​到十二月,而不必手动更改公式整个过程?

基本上问。 我刚刚创build了一个2013年1月的提款文件,从2012年12月的信息。现在我在1月单元格的公式是“= +'C:\商店\ Fego Caffe Irene \ Cash Ups \ 2012 [Fego Caffe November 2012.xlsm]每日细目“!$ E $ 42”现在发生的事情是我现在不得不取消保护表并手动更改十一月到十二月,所以一月份可以链接到2012年12月的文件。

是否有可能有一个VBmacros,当你打开1月份的文件,它会自动链接到2012年12月,以此类推其他月份。 当前月份需要上个月。

对不起,这个还是很新的

感谢你的帮助!!!!

您可以使用Workbook.LinkSources获取链接文件的列表,然后使用Workbook.LinkSources更改其中的任何一个。 使用Workbook.UpdateLink刷新数据

这是创build一个新的月份工作簿后可以调用的macros。

它会打开一个对话框让你select要链接的文件

为了简单起见,它被写入在代码中包含保护密码,但是你知道如何提示,所以我会把它留给你。

 Sub UpdateLink() Dim strFile As String Dim aLinks As Variant Dim i As Long Dim strLink As String Dim strLinkNew As String With Application.FileDialog(msoFileDialogFilePicker) .AllowMultiSelect = False .Show If .SelectedItems.Count > 0 Then strLinkNew = .SelectedItems(1) aLinks = ThisWorkbook.LinkSources(xlExcelLinks) If Not IsEmpty(aLinks) Then For i = 1 To UBound(aLinks) strLink = aLinks(i) If strLink Like "*\Fego Caffe Irene*.xlsm" Then ' Change Linked File ThisWorkbook.Worksheets("Links").Unprotect "YourPassword" ThisWorkbook.ChangeLink Name:=strLink, NewName:=strLinkNew, Type:=xlExcelLinks ThisWorkbook.Worksheets("Links").Protect "YourPassword" End If Next End If End If End With End Sub 

有一件事值得注意:你把一些但不是全部的variables去除了。 如果将Option Explicit放在所有模块的顶部,将会强制您始终声明variables。