2つのExcelファイル(xlamとxlsmの2つ)があります。 xlsmはxlamを参照します。参照されたxlamが見つからないためExcelがクラッシュする
xlamを開く前にxlsmを開くと、Excelがクラッシュします。
xslm(任意のプログラム方法を使用)からは、xlamが開いているかどうかを確認する方法があります。そうでない場合は、動的にロードするか、xlamを終了する前に最初に開く必要があるという警告を表示します。 。
私はそれのWorkbook_Openは、このような
2つのExcelファイル(xlamとxlsmの2つ)があります。 xlsmはxlamを参照します。参照されたxlamが見つからないためExcelがクラッシュする
xlamを開く前にxlsmを開くと、Excelがクラッシュします。
xslm(任意のプログラム方法を使用)からは、xlamが開いているかどうかを確認する方法があります。そうでない場合は、動的にロードするか、xlamを終了する前に最初に開く必要があるという警告を表示します。 。
私はそれのWorkbook_Openは、このような
何かに到達する前に、XLSM
Public Function checkReferences() As Boolean
On Error Resume Next
Dim retVal As Boolean
retVal = False
Dim i As Integer
For i = 1 To ThisWorkbook.VBProject.References.Count
With ThisWorkbook.VBProject.References(i)
If StrComp(.name, "PreTradeServices") = 0 Then
retVal = True
Exit For
End If
End With
Next i
checkReferences = retVal
End Function
残念ながらExcelのクラッシュでのWorkbook_Openサブから呼び出されるいくつかのコードを細工?
'/**
'
' VBA Function to check whether required addin is installed...
' @version 1.0
' @author Ilyas Kazi http://ilyaskazi.com
'
' @param string str_filename (to parse file name to lookup for the addin)
'
' @return boolean (true/false)
'
'**/
Function IsAddin_Installed(str_filename As String) As Boolean
Dim aiwb As AddIn 'addin workbook
For Each aiwb In Application.AddIns 'Loop through each addin workbook
If UCase(aiwb.Name) = UCase(str_filename) Then
IsAddin_Installed = True 'found
Exit Function
Else
IsAddin_Installed = False
End If
Next
End Function
私は恐れています、xlamはアプリケーションに表示されません.Addins – Pram