【发布时间】:2016-04-18 22:57:31
【问题描述】:
我正在尝试链接到工作簿。然后删除链接。当给出完整路径时,公式工作正常,但在传递字符串时失败。在下面的 vba 中,我试图从 Sheet1 中的单元格值中给出文件位置的名称。
'Location of Template and Country
Cntryloc = """" & Sheet1.Range("B5") & """"
Debug.Print Cntryloc
TempLoc = "" & Sheet1.Range("B11") & ""
Finaltemplloc = Sheet1.Range("B17")
i=2
'Getting the name of excel Sheet
CntryExcel = Sheet1.Range("C5")
TempLoc = "" & Sheet1.Range("B11") & ""
Workbooks.Open TempLoc & "\" & "Bank" & ".xlsx", True, False
Workbooks("" & FName & ".xlsx").Activate
ActiveWorkbook.Unprotect Password:="Tall.Trees"
Worksheets("Template").Unprotect Password:="Tall.Trees"
Worksheets("Template").Range("D14").Formula = "='&"["&CntryExcel&"]Dump"&"'"&"!"&"$A$" & i""
ActiveWorkbook.BreakLink Name:=Cntryloc, Type:=xlExcelLinks
Worksheets("Template").Protect Password:="Tall.Trees"
ActiveWorkbook.Protect Password:="Tall.Trees"
'Location for Final Output
ActiveWorkbook.SaveAs Filename:=Finaltemplloc & "\" & Bank.xlsx
ActiveWorkbook.Close
【问题讨论】:
-
您试图从哪里删除链接?
-
是 Dump 是工作表名称吗?
-
是的,转储是一个工作表名称,我试图删除指向国家文件的链接。下面的公式有效,但我希望它是动态的,如果将下面的代码放在正确的地方,下面的代码就可以工作: Workbooks.Open "Z:\TCRM=CCR\CountryRIR\TallTree\Templates\" & FName & ".xlsx", True, False Worksheets("Template").Range("D14").Formula = "='[ country list.xlsm]Dump'!$A$" & i & "" ActiveWorkbook.BreakLink Name:="Z:\TCRM=CCR\CountryRIR\TallTree\country list.xlsm", Type _ :=xlExcelLinks