我被困住了。我正在运行一个数组来打开所选的文件,这些文件是打开的,但是一旦我开始尝试添加处理代码,我似乎无法激活我想要的工作表。我尝试在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