folgende Bitte:
ich bräuchte eine Funktion die ich aufrufe oder alles in einer Prozedure, die mir ermittelt ob drei Workbooks vorhanden sind und ob das dritte offen ist.
Ist das dritte Workbook geöffnet und vorhanden soll es geschlossen werden, sonst soll er normal weiter machen.
Wie setze ich das um?
also so was in der art:
if Workbooks(3) exists and open Then
Workbooks(3).close
else
gehe weiter im Code
End if
dabei soll er bei der else Anweisung aber nicht stehenbleiben, wenn er das Workbooks(3) nicht gefunden hat, sondern weiter im Code arbeiten ohne was extra callen zu müssen, geht sowas und wenn ja wie?
Mein bisheriger Code:
Public Function Exists(strName As String) As Boolean
Dim wbb As Workbook
For Each wbb In Application.Workbooks
If wbb.Name = Workbooks(3) or strName Then
'MsgBox wbb.Name & "und" & strName
Exists = True
else
Exists = False
Exit Function
End If
Next wbb
End Function
Sub Test()
If Exists(Workbooks(3)) = True Then
Workbooks(3).Close
MsgBox "Mappe 3 wurde erfolgreich geschlossen"
Else
MsgBox "Keine Mappe 3 vorhanden"
'weiter im Code...
End If
End Sub
Hoffe jemand kann mir sagen was ich da noch ergänzen oder ändern muss.
Beste Grüße
Markus