Einbetten von Bildern in eine Office-Datei für ein benutzerdefiniertes Menüband

Ich entwickle eine benutzerdefinierte Multifunktionsleistenerweiterung für Excel, bei der für ein Steuerelement verschiedene benutzerdefinierte Bilder erforderlich sind. Es ist mir gelungen, einige Bilder in meinem Dateisystem zu verwenden, aber ich möchte diese Bilder in die XLSM-Datei einbetten. Ist es möglich, dies zu tun und sie über den VBA-Code zu referenzieren, der das Image des Steuerelements aktualisiert?

Zu Testzwecken ist dies das XML, das mein benutzerdefiniertes Menüband definiert:

<customUI xmlns="http://schemas.microsoft.com/office/2006/01/customui" onLoad="ribbonLoaded">
  <ribbon>
    <tabs>
      <tab idMso="TabHome" >
        <group id="customGroup1" label="My Group" insertAfterMso="GroupFont">
          <button id="customButton1" label="Click Me" size="large" onAction="Macro1" getImage="getButtonImage"/>
        </group>
      </tab>
    </tabs>
  </ribbon>
</customUI>

Und dies ist das Makro, das das Bild von verändertcustomButton1 Steuerung:

Dim imgIndex As Long

Public Sub getButtonImage(ByVal control As IRibbonControl, ByRef Image)
Select Case control.ID
  Case "customButton1"
    Set Image = LoadPicture("img" + Trim(Str(imgIndex)) + ".bmp")
    imgIndex = (imgIndex + 1) Mod 2
  End Select
End Sub

Ich habe versucht, die bmp-Dateien in die .xlsm-Datei einzufügen und auf sie zu verweisen, indem ich die Relationship-Datei (.rels) aktualisiere. Ich weiß jedoch nicht, wie ich auf sie in VBA verweise, und was am wichtigsten ist, wenn ich die Datei mit Excel öffne und speichere. sie werden automatisch gelöscht ...

Jede Hilfe wird geschätzt!

Antworten auf die Frage(1)

Ihre Antwort auf die Frage