G sccVbaLib не dll - это еще одна книга с кодом VBA, сохраненным как файл "xlam"
введите описание изображения здесь
Private Function CheckAddinReferencePath(ByVal IsDebug As Boolean) As Boolean
1 При ошибке Перейти к CheckAddinReferencePath_Error Dim AddinPathIsOk As Boolean
Const FilePathForVbaAddinProd As String = "\\uk.ssegroup.net\Shared\Groups\Gen-GasStorage\SSEHL Commercial Operations\GsccAddins\"
Const FilePathForVbaAddinDev As String = "C:\Users\mb95757\Documents\DevVba\GsccAddins\"
Const FileNameForAddin As String = "GsccVbaLibrary.xlam"
Dim vbProj As VBIDE.VBProject
Dim chkRef As VBIDE.Reference
Dim AddinRef As VBIDE.Reference
Dim BoolExists As Boolean
Dim FullPath As String
2 AddinPathIsOk = False 3 BoolExists = False
4 Установить vbProj = ThisWorkbook. VBProject
5 Выбрать регистр IsDebug Case True 6 FullPath = FilePathForVbaAddinDev & FileNameForAddin
7 Для каждого chkRef в vbProj.References 8 Если chkRef.Name = "GsccVbaLib" Then 9 Debug. FullPath) 10 Set AddinRef = chkRef 11 BoolExists = True 12 End If 13 Next
14 If (BoolExists) Then 15 If (InStr (1, AddinRef.FullPath, «C», vbTextCompare) <> 0 ) Then 16 vbProj.References.Remove AddinRef 17 vbProj.References.AddFromFile FullPath 18 End If 19 Else 20 vbProj.References.AddFromFile FilePathForVbaAddinDev & FileNameForAddin 21 End If 22 MsgBox Case «False Dev» 43
*1042* = FilePathForVbaAddinProd & FileNameForAddin 25 Для каждого chkRef в vbProj.References 26 Если chkRef.Name = "GsccVbaLib", тогда 27 Установите AddinRef = chkRef 28 BoolExists = True 29 End If 30 Next
31 If (BoolExists) Then 32 If (InStr (1, AddinRef.FullPath, "Gen-GasStorage", vbTextCompare) = 0) Then 33 vbProj.References .Remove AddinRef 34 vbProj.References.AddFromFile FullPath 35 End If 36 Else 37 vbProj.References.AddFromFile FilePathForVbaAddinProd & FileNameForAddin 38 End If 39 MsgBox «Success Prod» 40 End Select
* Then IS_DE 41 If (IS_DE) (InStr (1, AddinRef.FullPath, "C", vbTextCompare) = 0) Затем 42 AddinPathIsOk = True 43 End If #Else 44 If (Not InStr (1, AddinRef.FullPath, "Gen-GasStorage", vbTextCompare) = 0) Затем 45 AddinPathIsOk = True 46 End If #End If 47 Debug.Print (AddinRef.FullPath)
48 Set vbProj = Nothing
49 CheckAddinReferencePath = AddinPathIsOk
50 При ошибке GoTo 0 51 Функция выхода
CheckAddinReferencePath_Error:
52 MsgBox «Ошибка» и номер ошибки & »(« & Err.Description & ») в файле Ежедневный отчет 2021.xlsm, проверка процедуры AddinReferencePath, строка "& Erl &". "
Конечная функция