Ribbon-Menü lässt sich nicht neu laden
09.12.2014 12:34:21
Albert
ich habs jetzt hinbekommen, dass in meiner Exceldatei ein Ribbon-Menü vorhanden ist.
Nach den ganzen Google-Ergebnissen hab ich jetzt nach dem Öffnen meine Liste im Menü.
Doch wie kann ich während der offenen Datei das Menü nachladen?
Nachfolgendes hab ich im Internet gefunden, kann aber nichts damit anfangen.
Option Explicit
Option Private Module
Public objRibbon As IRibbonUI
Private Declare
Sub CopyMemory Lib "kernel32" Alias "RtlMoveMemory" (Destination As Any, Source As Any, ByVal _
Length As Long)
Sub OnLoad(ribbon As IRibbonUI)
Set objRibbon = ribbon
TempVars("ribbonobj") = ObjPtr(ribbon)
End Sub
Sub EnableRibbonButton(strButtonID As String)
If objRibbon Is Nothing Then ReloadRibbonObject
objRibbon.InvalidateControl ("dynTabMenu2")
End Sub
Sub ReloadRibbonObject()
Dim lPtrRibbonObj As Long
On Error Resume Next
lPtrRibbonObj = CLng(TempVars("ribbonobj"))
If Err.Number = 94 Then 'Unzulässig Verwendung von Null
On Error GoTo 0
Err.Raise vbObjectError + 1, , "Die Ribbon-Variable wurde noch nicht initialisiert!"
End If
Set gobjRibbon = ObjectFromPointer(lPtrRibbonObj)
End Sub
'
'
Function ObjectFromPointer(lPtr As Long) As Object
' Dim oTemp As Object
' CopyMemory oTemp, lPtr, 4
' Set ObjectFromPointer = oTemp
' CopyMemory oTemp, 0&, 4
'End Function
Sub RibbonAktualisieren()
If objRibbon Is Nothing Then ReloadRibbonObject
objRibbon.InvalidateControl ("dynTabMenu2")
End Sub
Wär euch um Hilfe echt dankbar!
Gruß
Albert