{"id":55000368,"date":"2023-06-01T00:00:00","date_gmt":"2023-06-21T11:40:16","guid":{"rendered":"http:\/\/access-im-unternehmen.aix-dev.de\/aiu\/?p=368"},"modified":"-0001-11-30T00:00:00","modified_gmt":"-0001-11-30T00:00:00","slug":"Kontextmenues_per_VBA_programmieren","status":"publish","type":"post","link":"https:\/\/vbentwickler.de\/Kontextmenues_per_VBA_programmieren\/","title":{"rendered":"Kontextmen&uuml;s per VBA programmieren"},"content":{"rendered":"<p><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/vg08.met.vgwort.de\/na\/9458daf3bdba488a8553ed633ff87cba\" width=\"1\" height=\"1\" alt=\"\"><\/p>\n<p><b>Vor sehr langer Zeit (2003) gab es f&uuml;r die Office-Anwendungen noch die M&ouml;glichkeit, Men&uuml;leisten, Symbolleisten und Kontextmen&uuml;s &uuml;ber die Benutzeroberfl&auml;che anzupassen. Die Men&uuml;leisten und Symbolleisten sind seit der Version 2007 Geschichte, und damit ist auch der Editor f&uuml;r die Gestaltung dieser Elemente verschwunden. Allerdings gibt es noch die Kontextmen&uuml;s, und diese lassen sich auch noch anpassen &#8211; zum Beispiel, um eigene Befehle hinzuzuf&uuml;gen. Diese k&ouml;nnten beispielsweise Teil von Add-Ins, COM-Add-Ins oder auch von Dokumenten sein. In diesem Artikel zeigen wir, wie man vorhandene Kontextmen&uuml;s bearbeitet oder eigene Kontextmen&uuml;s anlegt und diese bei Bedarf aufruft.<\/b><\/p>\n<h2>Unterschiede zwischen Outlook und den &uuml;brigen Office-Anwendungen<\/h2>\n<p>Zwischen Outlook und den &uuml;brigen Office-Anwendungen gibt es einen entscheidenden Unterschied f&uuml;r die individuelle Anpassungen von Kontextmen&uuml;s: W&auml;hrend wir unter Word, Excel, Access oder PowerPoint das Objektmodell aus der Bibliothek <b>Microsoft Office x.0 Object Library <\/b>nutzen k&ouml;nnen, um die gew&uuml;nschten Anpassungen vorzunehmen, ist dies in Outlook nicht m&ouml;glich. Hier sind die Kontextmen&uuml;s bereits Bestandteil des Ribbons. &Auml;nderungen der Kontextmen&uuml;s m&uuml;ssen wir in Outlook daher &uuml;ber die Ribbondefinition vornehmen, und zwar &uuml;ber die Eintr&auml;ge im Unterelement <b>contextMenus<\/b>. Dieses Thema behandeln wir im vorliegenden Artikel nicht, aber wir gehen im Detail darauf in einem weiteren Artikel namens <b>Kontextmen&uuml;s in Outlook anpassen <\/b>(<b>www.vbentwickler.de\/369<\/b>) ein.<\/p>\n<h2>Beispieldateien<\/h2>\n<p>Da die CommandBars sich in den verschiedenen Office-Anwendungen Access, Excel und Word leicht unterschiedlich verhalten, haben wir jeweils eine Beispieldatei f&uuml;r jede Anwendung bereitgestellt:<\/p>\n<ul>\n<li>Access: <b>KontextmenuesPerVBA.accdb<\/b><\/li>\n<li>Excel: <b>KontextmenuesPerVBA.xlsm<\/b><\/li>\n<li>Word: <b>KontextmenuesPerVBA.docm<\/b><\/li>\n<\/ul>\n<h2>Objektmodell verf&uuml;gbar machen<\/h2>\n<p>Um die Kontextmen&uuml;s anzupassen, ben&ouml;tigen wir Elemente der Bibliothek <b>Microsoft Office x.0 Object Library<\/b>. Diese ist in beispielsweise in den VBA-Projekten von Word und Excel bereits referenziert, nicht jedoch unter Access oder in anderen Projekten auf Basis von Visual Studio oder twinBASIC. Damit wir die Bibliothek etwa in Access unter Einsatz von IntelliSense nutzen k&ouml;nnen, f&uuml;gen wir einen Verweis auf diese Bibliothek hinzu. Dazu &ouml;ffnen wir zun&auml;chst den VBA-Editor der jeweiligen Anwendung, beispielsweise mit der Tastenkombination <b>Alt + F11<\/b>. Im VBA-Editor zeigen wir mit dem Men&uuml;befehl <b>Extras|Verweise <\/b>den <b>Verweise<\/b>-Dialog an. Hier selektieren Sie den Eintrag aus Bild 1 und f&uuml;gen diese so hinzu.<\/p>\n<p class=\"image\"><img decoding=\"async\" src=\"..\/fileadmin\/_temp_\/2023_03\/pic_368_001.png\" alt=\"Aktivieren des Verweises auf die Bibliothek Microsoft Office x.0 Object Library\" width=\"424,6267\" height=\"334,749\"\/><\/p>\n<p><b><span style=\"color:darkgrey;\">Bild 1: Aktivieren des Verweises auf die Bibliothek Microsoft Office x.0 Object Library<\/span><\/b><\/p>\n<h2>Das Objektmodell zum Anpassen von Kontextmen&uuml;s<\/h2>\n<p>Zeigen wir nun mit <b>F2 <\/b>den Objektkatalog an, k&ouml;nnen wir dort die Bibliothek <b>Office <\/b>ausw&auml;hlen und finden dort beispielsweise die Auflistung <b>CommandBars<\/b> vor (siehe Bild 2). Diese bietet bereits einige interessante Elemente an. Unter anderem k&ouml;nnen wir damit die Anzahl aller aktuell verf&uuml;gbaren <b>CommandBar<\/b>-Elemente ausgeben:<\/p>\n<p class=\"image\"><img decoding=\"async\" src=\"..\/fileadmin\/_temp_\/2023_03\/pic_368_002.png\" alt=\"Die CommandBars-Auflistung im Objektkatalog\" width=\"424,6267\" height=\"393,7743\"\/><\/p>\n<p><b><span style=\"color:darkgrey;\">Bild 2: Die CommandBars-Auflistung im Objektkatalog<\/span><\/b><\/p>\n<pre><span style=\"color:blue;\">Debug.Print<\/span> \"Anzahl Commandbars: \" _\r\n     & Application.CommandBars.Count<\/pre>\n<p>Das liefert beispielsweise f&uuml;r Access die Anzahl von 247 <b>CommandBar<\/b>-Elemente, unter Excel immerhin noch 199 Eintr&auml;ge. Ob es sich dabei ausschlie&szlig;lich um Kontextmen&uuml;s handelt, finden wir gleich heraus. Unter Access k&ouml;nnen wir direkt auf die <b>CommandBars<\/b>-Auflistung zugreifen, unter Excel und Word m&uuml;ssen wir einen Verweis auf die <b>Application<\/b>-Klasse voranstellen. Bei dem Zugriff von COM-Add-Ins aus ist dies ohnehin obligatorisch, mehr dazu zeigen wir in einem Beispiel in einem weiteren Artikel namens <b>Kontextmen&uuml; per COM-Add-In anpassen <\/b>(<b>www.vbentwickler.de\/370<\/b>).<\/p>\n<h2>CommandBar-Elemente durchlaufen<\/h2>\n<p>Mit den folgenden Zeilen aus der Prozedur <b>CommandBarsDurchlaufen <\/b>geben wir die Namen aller <b>CommandBar<\/b>-Elemente im Direktbereich des VBA-Editors aus:<\/p>\n<pre><span style=\"color:blue;\">Dim <\/span>cbr<span style=\"color:blue;\"> As <\/span>CommandBar\r\nFor Each cbr In Application.CommandBars\r\n     <span style=\"color:blue;\">Debug.Print<\/span> cbr.Name\r\n<span style=\"color:blue;\">Next<\/span> cbr<\/pre>\n<p>Das Gleiche gelingt auch per <b>For&#8230;Next<\/b>-Schleife &uuml;ber den 1-basierten Index:<\/p>\n<pre><span style=\"color:blue;\">Dim <\/span>cbr<span style=\"color:blue;\"> As <\/span>CommandBar\r\n<span style=\"color:blue;\">Dim <\/span>i<span style=\"color:blue;\"> As Integer<\/span>\r\nFor i = 1 To Application.CommandBars.Count\r\n     <span style=\"color:blue;\">Set<\/span> cbr = Application.CommandBars.Item(i)\r\n     <span style=\"color:blue;\">Debug.Print<\/span> cbr.Name\r\n<span style=\"color:blue;\">Next<\/span> i<\/pre>\n<p>Die Ausgabe k&ouml;nnen wir noch verfeinern, indem wir zwei weitere Eigenschaften ausgeben lassen:<\/p>\n<pre><span style=\"color:blue;\">Debug.Print<\/span> cbr.Name, cbr.Type, cbr.BuiltIn<\/pre>\n<h2>Typ eines CommandBar-Elements ermitteln<\/h2>\n<p>Die erste hier verwendete Eigenschaft lautet <b>Type<\/b>. <b>Type <\/b>kann einen der folgenden drei Werte liefern:<\/p>\n<ul>\n<li><b>0<\/b> (<b>msoBarTypeNormal<\/b>): Das <b>CommandBar<\/b>-Element ist eine Symbolleiste.<\/li>\n<li><b>1<\/b> (<b>msoBarTypeMenuBar<\/b>): Das <b>CommandBar<\/b>-Element ist eine Men&uuml;leiste.<\/li>\n<li><b>2<\/b> (<b>msoBarTypePopup<\/b>): Das <b>CommandBar<\/b>-Element ist ein Kontextmen&uuml;.<\/li>\n<\/ul>\n<p>Die ersten beiden Typen sind f&uuml;r unsere Zwecke nicht relevant. Bei diesen handelt es sich um die Typen der bis Office 2003 verwendeten Elemente, die dort angezeigt wurden, wo jetzt das Ribbon erscheint. Interessant wird es, wenn die Eigenschaft <b>Type <\/b>den Wert <b>2 <\/b>liefert. Geben wie also nun alle Kontextmen&uuml;s aus und lassen uns, da wir deren Anzahl nicht &uuml;ber die <b>Count<\/b>-Eigenschaft bestimmen k&ouml;nnen, mit der Z&auml;hlervariablen <b>i <\/b>den Index ausgeben:<\/p>\n<pre><span style=\"color:blue;\">Dim <\/span>cbr<span style=\"color:blue;\"> As <\/span>CommandBar\r\n<span style=\"color:blue;\">Dim <\/span>i<span style=\"color:blue;\"> As Integer<\/span>\r\nFor Each cbr In Application.CommandBars\r\n     <span style=\"color:blue;\">If <\/span>cbr.Type = msoBarTypePopup<span style=\"color:blue;\"> Then<\/span>\r\n         i = i + 1\r\n         <span style=\"color:blue;\">Debug.Print<\/span> i, cbr.Name, cbr.BuiltIn\r\n     <span style=\"color:blue;\">End If<\/span>\r\n<span style=\"color:blue;\">Next<\/span> cbr<\/pre>\n<p>Lassen wir die Prozedur unter Access laufen, erhalten wir 138 Kontextmen&uuml;s, unter Excel nur 67.<\/p>\n<h2>Eingebaute oder benutzerdefinierte Kontextmen&uuml;s<\/h2>\n<p>Mit der bereits verwendeten Eigenschaft <b>BuiltIn <\/b>k&ouml;nnen wir einen <b>Boolean<\/b>-Wert ausgeben, der angibt, ob es sich um ein eingebautes Kontextmen&uuml; handelt. Damit k&ouml;nnen wir die eingebauten Kontextmen&uuml;s von denen unterscheiden, die wir selbst per VBA hinzuf&uuml;gen.<\/p>\n<h2>Wozu die eingebauten Kontextmen&uuml;s nutzen?<\/h2>\n<p>Wozu sollten wir &uuml;berhaupt wissen wollen, welche eingebauten Kontextmen&uuml; die jeweiligen Anwendungen anbieten? Weil es geschehen kann, dass wir nicht gleich ein vollst&auml;ndiges Kontextmen&uuml; mit neuen Funktionen hinzuf&uuml;gen wollen, sondern nur einzelne Funktionen, die in bestehenden Kontextmen&uuml;s angezeigt werden sollen.<\/p>\n<p>Wenn wir beispielsweise unter Excel eine Funktion hinzuf&uuml;gen wollen, die nur im Zusammenhang mit einer Zelle angezeigt werden soll &#8211; also wenn der Benutzer mit der rechten Maustaste auf eine Zelle klickt &#8211; dann m&uuml;ssen wir den Namen dieses Kontextmen&uuml;s herausfinden und passen dann dieses Kontextmen&uuml; an.<\/p>\n<h2>Namen eines Kontextmen&uuml;s herausfinden<\/h2>\n<p>Den Namen eines Kontextmen&uuml;s kann man auf mehrere Arten ermitteln. Die erste ist die Ausgabe der Namen aller Kontextmen&uuml;s der jeweiligen Anwendung. Dazu f&uuml;hren wir die obige Prozedur zum Durchlaufen aller Kontextmen&uuml;s in der jeweiligen Anwendung aus. In vielen F&auml;llen k&ouml;nnen wir schon am Namen des Kontextmen&uuml;s erkennen, wann dieses angezeigt wird.<\/p>\n<p>Im Falle von Excel und einem Kontextmen&uuml; f&uuml;r eine Zelle werden wir schnell f&uuml;ndig &#8211; das Kontextmen&uuml; hei&szlig;t <b>Cell<\/b> (siehe Bild 3).<\/p>\n<p class=\"image\"><img decoding=\"async\" src=\"..\/fileadmin\/_temp_\/2023_03\/pic_368_003.png\" alt=\"Ausgabe der Kontextmen&uuml;s von Excel\" width=\"424,6267\" height=\"238,3109\" \/><\/p>\n<p><b><span style=\"color:darkgrey;\">Bild 3: Ausgabe der Kontextmen&uuml;s von Excel<\/span><\/b><\/p>\n<p>Unter anderen Anwendungen wie Access ist es teilweise schwierig, das richtige Kontextmen&uuml; aufgrund der Benennung zu finden. In diesem Fall kommt eine zweite Technik zum Zuge.<\/p>\n<h2>Beispielkontextmen&uuml;s in den anderen Anwendungen<\/h2>\n<p>Unter Excel nutzen wir zu Beispielzwecken wie beschrieben die Kontextmen&uuml;s <b>Cell<\/b> oder <b>Column<\/b>. In der Beispieldatei f&uuml;r Word schauen wir uns in den Beispielen das Kontextmen&uuml; <b>Text <\/b>an, das beim Rechtsklick auf normalen Text im Dokument erscheint. In der Beispieldatei f&uuml;r Access verwenden wir das Kontextmen&uuml;s eines Elements des Navigationsbereichs namens <b>Navigation Pane object Pop-up<\/b>.<\/p>\n<h2>Name des Kontextmen&uuml;s in das Kontextmen&uuml; schreiben<\/h2>\n<p>Dabei greifen wir einer Technik vor, die wir weiter unten noch genauer erl&auml;utern. Wir f&uuml;gen jedem Kontextmen&uuml; eine Schaltfl&auml;che hinzu, f&uuml;r deren Beschriftung wir den Namen des <b>CommandBar<\/b>-Elements festlegen. Dabei durchlaufen wir wieder alle Elemente der <b>CommandBars<\/b>-Auflistung und rufen jeweils f&uuml;r die <b>Controls<\/b>-Auflistung die <b>Add<\/b>-Methode auf. Dieser &uuml;bergeben wir als ersten Parameter den Typ des zu erstellenden Steuerelements, in diesem Fall <b>msoControlButton <\/b>f&uuml;r eine Schaltfl&auml;che. Au&szlig;erdem hinterlegen wir f&uuml;r den letzten Parameter <b>Temporary <\/b>den Wert <b>True<\/b>. Dies sorgt daf&uuml;r, dass die angelegten Steuerelemente nur f&uuml;r die aktuelle Session der jeweiligen Anwendung angezeigt werden und bei einem weiteren Start nicht erneut erscheinen:<\/p>\n<pre><span style=\"color:blue;\">Public Sub <\/span>NameInKontextmenuesSchreiben()\r\n     <span style=\"color:blue;\">Dim <\/span>cbr<span style=\"color:blue;\"> As <\/span>CommandBar\r\n     <span style=\"color:blue;\">Dim <\/span>cbb<span style=\"color:blue;\"> As <\/span>CommandBarButton\r\n     <span style=\"color:blue;\">Dim <\/span>i<span style=\"color:blue;\"> As Integer<\/span>\r\n     For Each cbr In Application.CommandBars\r\n         <span style=\"color:blue;\">If <\/span>cbr.Type = msoBarTypePopup<span style=\"color:blue;\"> Then<\/span>\r\n             <span style=\"color:blue;\">Set<\/span> cbb = cbr.Controls.Add( _\r\n                 msoControlButton, , , , <span style=\"color:blue;\">True<\/span>)\r\n             cbb.Caption = cbr.Name\r\n         <span style=\"color:blue;\">End If<\/span>\r\n     <span style=\"color:blue;\">Next<\/span> cbr\r\n<span style=\"color:blue;\">End Sub<\/span><\/pre>\n<p>F&uuml;hren wir diese Prozedur aus und zeigen mit der rechten Maustaste eines der Kontextmen&uuml;s der Anwendung an, liefert dieses in einem neuen Eintrag den Namen des Kontextmen&uuml;s (siehe Bild 4).<\/p>\n<p class=\"image\"><img decoding=\"async\" src=\"..\/fileadmin\/_temp_\/2023_03\/pic_368_004.png\" alt=\"Name eines CommandBar-Elements als Schaltfl&auml;chenbeschriftung\" width=\"424,6267\" height=\"455,7206\" \/><\/p>\n<p><b><span style=\"color:darkgrey;\">Bild 4: Name eines CommandBar-Elements als Schaltfl&auml;chenbeschriftung<\/span><\/b><\/p>\n<p>Mit dem Namen eines Kontextmen&uuml;s k&ouml;nnen wir gezielt auf das jeweilige Kontextmen&uuml; zugreifen und dessen Elemente bearbeiten oder neue Elemente hinzuf&uuml;gen.<\/p>\n<h2>Elemente von Kontextmen&uuml;s ausgeben<\/h2>\n<p>Wir schauen uns dies zun&auml;chst beim Ausgeben der Steuerelemente eines Kontextmen&uuml;s an. Die folgende Prozedur referenziert das Kontextmen&uuml; <b>Column <\/b>von Excel (wenn Du den in einer anderen Anwendung ausprobieren m&ouml;chtest, gib den Namen eines dort vorhandenen Steuerelements an). Dann durchl&auml;uft die Prozedur alle Elemente der <b>Controls<\/b>-Auflistung des <b>CommandBar<\/b>-Elements. Wichtig ist, dass wir die Laufvariable <b>ctl <\/b>mit dem Typ <b>Object <\/b>deklarieren. Der Hintergrund ist, dass die <b>Controls<\/b>-Auflistung verschiedene Steuerelementtypen enthalten kann. Deshalb geben wir im Folgenden direkt den Wert der Eigenschaft <b>Type <\/b>des jeweiligen Steuerelements aus. Noch eine bessere Methode, um den Typ zu ermitteln, ist die Ausgabe von <b>TypeName(ctl):<\/b><\/p>\n<pre><span style=\"color:blue;\">Public Sub <\/span>ElementeEinesKontextmenuesAusgeben()\r\n     <span style=\"color:blue;\">Dim <\/span>cbr<span style=\"color:blue;\"> As <\/span>CommandBar\r\n     <span style=\"color:blue;\">Dim <\/span>ctl<span style=\"color:blue;\"> As Object<\/span>\r\n     <span style=\"color:blue;\">Set<\/span> cbr = Application.CommandBars(\"Column\")\r\n     For Each ctl In cbr.Controls\r\n         <span style=\"color:blue;\">Debug.Print<\/span> ctl.Caption, ctl.Type, TypeName(ctl)\r\n     <span style=\"color:blue;\">Next<\/span> ctl\r\n<span style=\"color:blue;\">End Sub<\/span><\/pre>\n<p>Die Ausgabe f&uuml;r das <b>Column<\/b>-Kontextmen&uuml; lautet:<\/p>\n<pre>Auss&chneiden           1            CommandBarButton\r\nK&opieren               1            CommandBarButton\r\nEinf&uuml;&gen               1            CommandBarButton\r\nInhalte einf&uuml;&gen...    1            CommandBarButton\r\nTabelle e&inf&uuml;gen       1            CommandBarButton\r\n&Datentyp               10           CommandBarPopup\r\nZellen &einf&uuml;gen        1            CommandBarButton\r\nZellen l&&ouml;schen         1            CommandBarButton\r\nInhal&te l&ouml;schen        1            CommandBarButton\r\nZellen &formatieren...  1            CommandBarButton\r\nSpalten&breite...       1            CommandBarButton\r\n&Ausblenden             1            CommandBarButton\r\nEinb&lenden             1            CommandBarButton\r\n&Links entfernen        1            CommandBarButton\r\n&Auml;nderun&gen anzeigen    1            CommandBarButton<\/pre>\n<p>Es gibt eine ganze Reihe von Steuerelementtypen, die Du im Objektkatalog unter der Auflistung <b>msoControlType <\/b>einsehen kannst. Wir k&ouml;nnen jedoch nur einige wenige nutzen. Unter den eingebauten Steuerelementen finden wir eine ganze Reihe verschiedener Typen, aber wir k&ouml;nnen nur drei davon mit der Add-Methode zur Controls-Auflistung hinzuf&uuml;gen:<\/p>\n<ul>\n<li><b>1 <\/b>(<b>msoControlButton<\/b>): Schaltfl&auml;che<\/li>\n<li><b>4 <\/b>(<b>msoControlComboBox<\/b>): Kombinationsfeld<\/li>\n<li><b>10 <\/b>(<b>msoControlPopup<\/b>): Untermen&uuml;<\/li>\n<\/ul>\n<p>Das erledigen wir beispielhaft mit der folgenden Prozedur. Hier f&uuml;gen wir nicht nur die drei verschiedenen Typen hinzu, sondern zeigen gleich noch das angepasste Kontextmen&uuml; mit der Methode <b>ShowPopup <\/b>an:<\/p>\n<pre><span style=\"color:blue;\">Public Sub <\/span>ElementeAnlegen()\r\n     <span style=\"color:blue;\">Dim <\/span>cbr<span style=\"color:blue;\"> As <\/span>CommandBar\r\n     <span style=\"color:blue;\">Dim <\/span>ctl<span style=\"color:blue;\"> As Object<\/span>\r\n     <span style=\"color:blue;\">Set<\/span> cbr = Application.CommandBars(\"Column\")\r\n     <span style=\"color:blue;\">Set<\/span> ctl = cbr.Controls.Add(1, , , , <span style=\"color:blue;\">True<\/span>)\r\n     ctl.Caption = \"msoControlButton\"\r\n     <span style=\"color:blue;\">Set<\/span> ctl = cbr.Controls.Add(4, , , , <span style=\"color:blue;\">True<\/span>)\r\n     ctl.Caption = \"msoControlComboBox\"\r\n     <span style=\"color:blue;\">Set<\/span> ctl = cbr.Controls.Add(10, , , , <span style=\"color:blue;\">True<\/span>)\r\n     ctl.Caption = \"msoControlPopup\"\r\n     cbr.ShowPopup\r\n<span style=\"color:blue;\">End Sub<\/span><\/pre>\n<div class=\"rcp_restricted\"><p><span style=\"color: #ff0000;\">M&ouml;chten Sie weiterlesen? Dann l&ouml;sen Sie Ihr Ticket!<\/span><br \/>\n<span style=\"color: #ff0000;\">Hier geht es zur Bestellung des Jahresabonnements des Magazins <strong>Visual Basic Entwickler<\/strong>:<\/span><br \/>\n<span style=\"color: #ff0000;\"><a style=\"color: #ff0000;\" href=\"https:\/\/shop.minhorst.com\/magazine\/363\/visual-basic-entwickler-jahresabonnement?c=77\">Zur Bestellung ...<\/a><\/span><br \/>\n<span style=\"color: #ff0000;\">Danach greifen Sie sofort auf <strong>alle rund 200 Artikel<\/strong> unseres Angebots zu - auch auf diesen hier!<\/span><br \/>\n<span style=\"color: #000000;\">Oder haben Sie bereits Zugangsdaten? Dann loggen Sie sich gleich hier ein:<\/span><\/p>\n<\/div>\n\n\t\n\t<form id=\"rcp_login_form\"  class=\"rcp_form\" method=\"POST\" action=\"https:\/\/vbentwickler.de\/data\/wp\/v2\/posts\/55000368\/\">\n\n\t\t\n\t\t<fieldset class=\"rcp_login_data\">\n\t\t\t<p>\n\t\t\t\t<label for=\"rcp_user_login\">Username or Email<\/label>\n\t\t\t\t<input name=\"rcp_user_login\" id=\"rcp_user_login\" class=\"required\" type=\"text\"\/>\n\t\t\t<\/p>\n\t\t\t<p>\n\t\t\t\t<label for=\"rcp_user_pass\">Password<\/label>\n\t\t\t\t<input name=\"rcp_user_pass\" id=\"rcp_user_pass\" class=\"required\" type=\"password\"\/>\n\t\t\t<\/p>\n\t\t\t\t\t\t<p>\n\t\t\t\t<input type=\"checkbox\" name=\"rcp_user_remember\" id=\"rcp_user_remember\" value=\"1\"\/>\n\t\t\t\t<label for=\"rcp_user_remember\">Remember me<\/label>\n\t\t\t<\/p>\n\t\t\t<p class=\"rcp_lost_password\"><a href=\"\/data\/wp\/v2\/posts\/55000368?rcp_action=lostpassword\"><\/a><\/p>\n\t\t\t<p>\n\t\t\t\t<input type=\"hidden\" name=\"rcp_action\" value=\"login\"\/>\n\t\t\t\t<input type=\"hidden\" name=\"rcp_redirect\" value=\"https:\/\/vbentwickler.de\/data\/wp\/v2\/posts\/55000368\/\"\/>\n\t\t\t\t<input type=\"hidden\" name=\"rcp_login_nonce\" value=\"c0e57e8619\"\/>\n\t\t\t\t<input id=\"rcp_login_submit\" class=\"rcp-button\" type=\"submit\" value=\"Login\"\/>\n\t\t\t<\/p>\n\t\t\t\t\t<\/fieldset>\n\n\t\t\n\t<\/form>\n<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Vor sehr langer Zeit (2003) gab es f&uuml;r die Office-Anwendungen noch die M&ouml;glichkeit, Men&uuml;leisten, Symbolleisten und Kontextmen&uuml;s &uuml;ber die Benutzeroberfl&auml;che anzupassen. Die Men&uuml;leisten und Symbolleisten sind seit der Version 2007 Geschichte, und damit ist auch der Editor f&uuml;r die Gestaltung dieser Elemente verschwunden. Allerdings gibt es noch die Kontextmen&uuml;s, und diese lassen sich auch noch anpassen &#8211; zum Beispiel, um eigene Befehle hinzuzuf&uuml;gen. Diese k&ouml;nnten beispielsweise Teil von Add-Ins, COM-Add-Ins oder auch von Dokumenten sein. In diesem Artikel zeigen wir, wie man vorhandene Kontextmen&uuml;s bearbeitet oder eigene Kontextmen&uuml;s anlegt und diese bei Bedarf aufruft.<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"om_disable_all_campaigns":false,"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"_uf_show_specific_survey":0,"_uf_disable_surveys":false,"footnotes":""},"categories":[662023,66032023,44000038],"tags":[],"yst_prominent_words":[],"class_list":["post-55000368","post","type-post","status-publish","format-standard","hentry","category-662023","category-66032023","category-Office_programmieren"],"aioseo_notices":[],"_links":{"self":[{"href":"https:\/\/vbentwickler.de\/data\/wp\/v2\/posts\/55000368","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/vbentwickler.de\/data\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/vbentwickler.de\/data\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/vbentwickler.de\/data\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/vbentwickler.de\/data\/wp\/v2\/comments?post=55000368"}],"version-history":[{"count":0,"href":"https:\/\/vbentwickler.de\/data\/wp\/v2\/posts\/55000368\/revisions"}],"wp:attachment":[{"href":"https:\/\/vbentwickler.de\/data\/wp\/v2\/media?parent=55000368"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/vbentwickler.de\/data\/wp\/v2\/categories?post=55000368"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/vbentwickler.de\/data\/wp\/v2\/tags?post=55000368"},{"taxonomy":"yst_prominent_words","embeddable":true,"href":"https:\/\/vbentwickler.de\/data\/wp\/v2\/yst_prominent_words?post=55000368"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}