Я только сейчас изучаю, как использовать стек вызовов в VBE. У меня есть один вопрос, на который я, похоже, не могу найти ответ, это то, что это означает, когда, когда я прохожу две подпрограммы, в моем стеке вызовов появляются два экземпляра [<Non-Basic Code>]
. введите описание изображения здесь
Я не уверен, что это уместно, но я включил две свои подпрограммы, через которые я прохожу, если это поможет.
Вот мои объявленные переменные уровня модуля (за исключением Option Explicit):
Option Explicit
Dim fso As Scripting.FileSystemObject
Dim NewFolderPath As String
Моя первая подпрограмма:
Sub UsingTheScriptingRunTimeLibrary()
Dim OldFolderPath As String
NewFolderPath = Environ("userprofile") & "\Documents\Education\Excel\VBA\Test" 'where we I am copying TO
OldFolderPath = Environ("userprofile") & "\Documents\Education\Excel\VBA\Excel VBA Introduction - Wise Owl" 'where we are copying FROM
Set fso = New Scripting.FileSystemObject
If fso.FolderExists(OldFolderPath) Then
If Not fso.FolderExists(NewFolderPath) Then
fso.CreateFolder NewFolderPath
End If
Call CopyExcelFiles(OldFolderPath) 'since we are sending this as an argument to our CopyExcelFiles sub for its StartFolderPath parameter, we do not need to set it in our next sub
End If
Set fso = Nothing
End Sub
Вот моя вторая подпрограмма :
Sub CopyExcelFiles(StartFolderPath As String)
Dim Fil As Scripting.File
Dim SubFol As Scripting.Folder
Dim OldFolder As Scripting.Folder
Set OldFolder = fso.GetFolder(StartFolderPath)
For Each Fil In OldFolder.Files
If Left(fso.GetExtensionName(Fil.Path), 2) = "xl" Then
Fil.Copy NewFolderPath & "\" & Fil.Name
End If
Next Fil
For Each SubFol In OldFolder.SubFolders
Call CopyExcelFiles(SubFol.Path)
Next SubFol
End Sub
В любом случае, когда я прохожу свою первую подпрограмму, я вижу свою первую подпрограмму в списке и один экземпляр (и это буквальный текст) [<Non-Basic Code>]
. Однако, когда я начинаю проходить через мою вторую подпрограмму, я вижу два экземпляра [<Non-Basic Code>]
и обе перечисленные подпрограммы.
Любая помощь по этому вопросу будет принята с благодарностью!