Zo kan het ook:
Function IsBookOpen(ByVal TargetBook As String) As Boolean
On Error Resume Next
IsBookOpen = CBool(Len(Application.Workbooks(TargetBook).Name) > 0)
End Function
Aanroepen in andere code doe je zo:
msgbox IsBookOpen("picklist.xls")
Voordelen van deze methode:
> Sneller, want er is geen test nodig van alle objecten in de workbooks collectie.
> Minder code, geen variabele-declaraties
> Laat ook toe op addins te testen, bv. IsBookOpen("funcres.xla"), funcres.xla is een MS-addin. Dit kan niet met de andere methode, omdat addins niet als object in de workbooks collectie bestaan...
Groeten,
Bart