Private Sub Add_Click()
ActiveWorkbook.Worksheets(ComboBox1.Value).Copy Before:=Workbooks(link.Value).Worksheets("Contract")
End Sub
这是我100%确定链接和ComboBox1具有我正在寻找的值。
有人能告诉我为什么我一直收到错误“下标超出范围”吗?
答案 0 :(得分:1)
问题来自:
Before := Workbooks(link.Value)
从您的评论中可以看出link.value
包含文件的完整路径名。方法Workbooks(somename)
需要 somename 作为名称,例如Workbooks(test.xls)
,而不是路径。
尝试从浏览对话框中获取没有路径的文件名,并在没有路径的情况下将其提供给此函数。最后,为了快速修复它,你可以使用它:
ActiveWorkbook.Worksheets(ComboBox1.Value).Copy Before:=Workbooks(Right(link.Value, Len(link.Value) - InStrRev(link.Value, "\"))).Worksheets("Contract")
添加的代码从link.value中给出的完整路径中提取文件名。