尝试使用workbooks.open打开工作簿后激活工作表

时间:2017-06-09 05:51:29

标签: excel vba

我被困住了。我正在运行一个数组来打开所选的文件,这些文件是打开的,但是一旦我开始尝试添加处理代码,我似乎无法激活我想要的工作表。我尝试在strShName上调试并且变量永远不会被填充,总是为null,但变量ExpRptFileName(N)确实填充了完整路径和文件name.ext。 我想知道是否应该删除该路径(我已经尝试了多种变体,但它失败了),或者我使用的循环类型是否会让我失望。

在以下代码中,变量ExpRptID为null;不会从工作表中提取数据......而变量ExpRptFileName(N)包含正确的路径,文件名和文件ext。

以下是代码:

ExpRptFileNameInLoop = Right(ExpRptFileName(N), Len(ExpRptFileName(N)) - InStrRev(ExpRptFileName(N), Application.PathSeparator, , 1))

If bIsBookOpen(ExpRptFileNameInLoop) = False Then

            Set mybook = Nothing
            On Error Resume Next
            Set mybook = Workbooks.Open(ExpRptFileName(N))
            On Error GoTo 0

            If Not mybook Is Nothing Then

                Workbooks.Open ExpRptFileName(N)



Dim ExpRptID As String
ExpRptID = Sheets("Expense Report").Range("R3").Value

Exit Sub
Function bIsBookOpen(ByRef szBookName As String) As Boolean
' ************** Notes here
On Error Resume Next
bIsBookOpen = Not (Application.Workbooks(szBookName) Is Nothing)
End Function

0 个答案:

没有答案