Fehler beim Schließen einer geöffneten Arbeitsmappe in VBA-Benutzerformular

In einer Unterroutine möchte ich eine Arbeitsmappe öffnen, lesen und schließen.
Aus irgendeinem Grund erhalte ich einen Fehler:

Run-time error '1004':

Method 'Close' of object _Workbook failed

Ich habe ein minimales Code-Snippet identifiziert, um das Problem zu reproduzieren.
Erstellen Sie eine neue Excel-Datei. Erstellen Sie darin ein Benutzerformular. Erstellen Sie daraufhin eine Befehlsschaltfläche mit dem folgenden Click-Ereigniscode:

Private Sub CommandButton1_Click()
    Dim filename As String
    Dim opened_workbook As Workbook

    filename = Application.GetOpenFilename()    ' User selects valid Excel file
    Set opened_workbook = Application.Workbooks.Open(filename)
    ' File operations would occur here
    opened_workbook.Close    ' Exception thrown here

    MsgBox "If you got here, it worked!"
    Unload Me
End Sub

Was mich wirklich verwirrt ist, dass dieser Fehler nicht mit demselben Code auftritt, wenn sich die Befehlsschaltfläche nicht in einem Benutzerformular befindet (auf einer einfachen Schaltfläche direkt im Arbeitsblatt).

Ich weiß nicht einmal, was ich sonst noch melden oder wo ich nachsehen soll, um dieses Verhalten zu erklären (außer StackOverflow!). Ich schreibe VBA mit Excel für Mac 2011 und kann auf Windows Excel 2010 umsteigen, wenn es einen Unterschied macht.

Antworten auf die Frage(2)

Ihre Antwort auf die Frage