VBA-Dialog schliesst nicht nach OK-Event

Hallo zusammen,
ich habe LibreOffice 24.8.6.2 Linux-Version und möchte mit dieser VBA-Funktion beim Öffnen des Dokuments eine Auswahlliste anzeigen lassen. Das klappt alles. Was nicht klappt, dass der Dialog mit dem OK-Button auch schliesst. Das klappt erst mit dem Abbrechen-Button.
Sieht jemand was ich falsch mache?

Function GetSelectedCategories() As Variant
    Dim oDialog As Object
    Dim oListBoxControl As Object
    Dim oListBoxModel As Object
    Dim oContext As Object, oDataSource As Object
    Dim oConnection As Object, oStatement As Object, oResultSet As Object
    Dim i As Integer
    Dim selectedItems As Variant
    Dim result()

    DialogLibraries.loadLibrary("Standard")
    oDialog = CreateUnoDialog(DialogLibraries.Standard.DlgKategorien)

    oListBoxControl = oDialog.getControl("lstKategorien")
    oListBoxModel = oListBoxControl.Model

    oContext = CreateUnoService("com.sun.star.sdb.DatabaseContext")
    oDataSource = oContext.getByName("DB-projects")
    oConnection = oDataSource.getConnection("username", "pw")
    oStatement = oConnection.createStatement()
    oResultSet = oStatement.executeQuery("SELECT name FROM category ORDER BY name")

    Do While oResultSet.next()
        oListBoxControl.addItem(oResultSet.getString(1), oListBoxControl.ItemCount)
    Loop

    oResultSet.close()
    oConnection.close()

    Dim dialogResult As Integer
    dialogResult = oDialog.execute()  ' Diese Methode blockiert, bis der Dialog geschlossen wird

    ' Überprüfen, ob der Benutzer den Dialog bestätigt hat (OK gedrückt)
    If dialogResult = 1 Then
        selectedItems = oListBoxModel.SelectedItems
        ReDim result(UBound(selectedItems))
        For i = 0 To UBound(selectedItems)
            result(i) = oListBoxModel.StringItemList(selectedItems(i))
        Next i
        GetSelectedCategories = result
    Else
        ' Wenn der Dialog abgebrochen wurde oder ohne Auswahl geschlossen wurde
        GetSelectedCategories = Array()
    End If

    oDialog.endExecute()   ' Markiert das Ende des Dialogs
    oDialog.dispose()      ' Gibt den Dialog aus dem Speicher frei
End Function

Viele Grüße Alex!

Problemstellung:

  • Der Dialog schließt sich nicht automatisch, wenn der OK-Button gedrückt wird. Er muss manuell mit dem Abbrechen-Button geschlossen werden.

  • Wenn der OK-Button gedrückt wird, passiert nichts, und die einzige Reaktion ist eine leichte Abdunkelung des Fensters, während das Dokument weiterhin aktiv ist.

  • Das Makro läuft zwar, aber der Dialog bleibt offen.