Office: (Office 2010) Erstellung eines eigenen Kontextmenü für ein Diagramm

Helfe beim Thema Erstellung eines eigenen Kontextmenü für ein Diagramm in Microsoft Excel Hilfe um das Problem gemeinsam zu lösen; Hallo ! Kann mir vielleicht jemand von euch sagen, ob es mit VBA für Excel möglich ist, ein eigenes Kontextmenü zu programmieren, welches man mit der... Dieses Thema im Forum "Microsoft Excel Hilfe" wurde erstellt von Kossy, 22. Juni 2011.

  1. Erstellung eines eigenen Kontextmenü für ein Diagramm


    Hallo !

    Kann mir vielleicht jemand von euch sagen, ob es mit VBA für Excel möglich ist, ein eigenes Kontextmenü zu programmieren, welches man mit der rechten Taste seiner Maus aufrufen kann?

    Dieses Kontextmenü sollte dann bei mir nur geöffnet werden, wenn man in bestimmte Bereiche eines Diagramms klickt (z.B. eine Blase in einem Blasendiagramm).

    Ist so etwas in VBA zu bewerkstelligen? Natürlich sollten dann auch alle anderen Kontextmenüs von MS excel in diesem Zusammenhang komplett verschwinden und für den Benutzer nicht sichtbar sein.

    Danke schön für die Unterstützung !

    Grüße
    Kossy

    :)
     
    Kossy, 22. Juni 2011
    #1
  2. Beverly
    Beverly Erfahrener User
    Hi Kossy,

    das Kontextmenü kannst du nach folgendem Prizip manipulieren (zuerst werden alle vorhandenen Schalter des Kontextmenüs gelöscht und dann ein neuer Schalter erstellt, der das Mano "ausfuehren" startet):
    Code:
    Zurücksetzen kannst du das Kontextmenü mit diesem Code:
    Code:
    Wenn du das Kontextmenü beim Klick auf das Diagramm/Datenpunkt verändern willst, hängt das "Wie" davon ab, ob du ein Diagrammblatt oder ein eingebettetes Diagrammobjekt verwendest - dazu hatten wir vor längerer Zeit hier im Forum einen gemeinsamen Thread, musst also nur dort nachschauen.


    Erstellung eines eigenen Kontextmenü für ein Diagramm [​IMG]
     
    Beverly, 24. Juni 2011
    #2
  3. HAllo Kossi

    Das ist möglich.
    In Excel xp hab ich das schonmal gemacht.

    Das Ereigniss (das den Rechtsclick auf eine Blase erkennt) kann ich dir geben, aber in Excel2010 habe ich noch nie ein Kontextmenu erstellt.

    Ist das Diagramm in einem Tabellenblatt eingebettet oder ist es ein eigenes Blatt ?
    Für ein eigenes Blatt geht so:

    ' **********************************************************************
    ' Modul: Diagramm4 Typ: Element der Mappe(Sheet, Workbook, ...)
    ' **********************************************************************

    Option Explicit

    Private Sub Chart_MouseDown(ByVal Button As Long, ByVal Shift As Long, ByVal x As Long, ByVal y As Long)
    Dim lngPoint As Long
    Dim L As Long
    Dim ID As Long
    If Me.ChartType = xlBubble Then
    If Button = 2 Then 'rechtsclick
    Me.GetChartElement x, y, ID, L, lngPoint
    If ID = xlSeries Then 'Schauen was selectiert ist
    MsgBox "Jetzt das Kontextmenu erstellen"
    End If
    End If
    End If
    End Sub

    Private Sub Chart_BeforeRightClick(Cancel As Boolean)
    Cancel = True
    End Sub




    ransi
     
    ransi, 24. Juni 2011
    #3
  4. Erstellung eines eigenen Kontextmenü für ein Diagramm

    Hallo ihr Zwei !

    Habt vielen Dank für die Codebeispiele, ich werde diese zeitnah mal austesten, allerdings komme ich erst Montag wieder dazu.

    Grüße
    Kossy
     
    Kossy, 24. Juni 2011
    #4
  5. Hi Beverly !

    Ich habe eben mal Deinen Code ausprobiert, allerdings reagiert Excel nicht auf einen Rechtsklick. Es werden nur Klicks mit der linken Maustaste auf den Blasen meines Diagramms angenommen.

    Ich habe eben mal den Debugger laufen lassen (also vorher auch einen Haltepunkt auf dem Ereignis gesetzt, dieses wird aber immer ignoriert). Der Wert der Variable Button beträgt niemals zwei !

    Hier mal der Code (es handelt sich um ein eingebettetes Diagramm und nciht um eins auf einem dafür separaten Diagrammblatt, ich habe also eine eigne Klasse für die Ereignisse programmiert):

    Code:
    Es wird aber dennoch immer wieder dan konventionelle Kontextmenü von MS Excel 2010 angezeigt.

    Vielen Dank für die Unterstützung !

    Grüße
    Kossy

    //EDIT

    Ich muss mich noch einmal korrigieren, nun wird durch die Variable Button gleich 2 gesetzt (warum auch immer das plötzlich funktioniert), allerdings wird weiterhin das Kontextmenü nicht angepasst.

    Merkwürdig ist auch, dass in der For Schleife gar nichts passiert.

    Code:
     
    Kossy, 26. Juni 2011
    #5
  6. Beverly
    Beverly Erfahrener User
    Hi Kossy,

    dann solltest du schon mal deine Arbeitsmappe hochladen - wer soll das nachbauen, zumal niemand weiß, wie du die Klasse definiert hast. Dir ist ja außerdem hinreichend bekannt, dass ein Nachbau immer anders aussieht als das Original und was im Nachbau funktioniert muss folglich nicht unbedingt im Original dann auch so funktionieren.
    Wenn du irgend etwas am Code änderst, dann musst du die Klasse neu initialisieren, erst dann wird die Änderung angenommen.


    Erstellung eines eigenen Kontextmenü für ein Diagramm [​IMG]
     
    Beverly, 26. Juni 2011
    #6
  7. Hallo !

    Ich kann diese Arbeitsmappe nicht hochladen, da sie aufgrund eines Cubes im Hintergrund defintiv zu groß ist und ein Nachbauen ist auch icht so ohne weiteres machbar.

    Die Klasse wird automatisch immer wieder neu initalisiert, es muss definitiv an dem Code liegen, denn alle andere Events werden ja ausgeführt, eben nur nicht der Code für das Kontextmenü, welche mit dem Rechtsklick ausgeführt werden soll.
     
    Kossy, 26. Juni 2011
    #7
  8. Beverly
    Beverly Erfahrener User

    Erstellung eines eigenen Kontextmenü für ein Diagramm

    Hi,

    es ist nicht das Kontextmenü "Cells" welches manipuliert werden muss, sondern ein anderes. Allerdings weiß ich nicht welches es ist.


    Erstellung eines eigenen Kontextmenü für ein Diagramm [​IMG]
     
    Beverly, 27. Juni 2011
    #8
  9. Hallo nochmal !

    ich habe ein kleines Problem. Ich habe mit dem folgenden Code jetzt das Cell Kontextmenü so manipuliert, dass dort alle Einträge raus sind und nur noch ein "Hallo ausgeben" im Kontextmenü auftaucht:

    Code:
    Wichtig: Diese Einstellung ist jetzt plötzlich fest und ist in allen anderen Excel Dokumenten sichtbar und nciht mehr rückgängig zu machen, indem man bspw. das Dokument schließt oder neu öffnet. Auch in allen anderen Exceldokumenten ist dieses Problem sichtbar.

    Wie kann ich das jetzt wieder rückgängig machen?

    Danke schön für die Hilfe !
     
    Kossy, 27. Juni 2011
    #9
  10. Beverly
    Beverly Erfahrener User
    Hi,

    siehe Beitrag #2


    Erstellung eines eigenen Kontextmenü für ein Diagramm [​IMG]
     
    Beverly, 27. Juni 2011
    #10
  11. Hi Beverly

    tut mir leid, aber das verstehe ich nicht...
     
  12. Beverly
    Beverly Erfahrener User
    Hi,


    Erstellung eines eigenen Kontextmenü für ein Diagramm [​IMG]
     
    Beverly, 27. Juni 2011
    #12
  13. Erstellung eines eigenen Kontextmenü für ein Diagramm

    Sorry, der Beitrag war in den falschen Topic gerutscht, daher hier noch einmal:

    Hallo nochmal !

    Danke Beverly,

    wir kommen der Sache langsam näher, ich habe im Anhang mal das KOntextmenü abfotografiert, welches ich verändern bzw. durch eigene Felder anpassen will.

    Außerdem habe ich mal in einem Exceldokument alle Command Bars ausgeben lassen, die Excel anbietet, aber leider (so denke ich jedenfalls) ist mein Kontextmenü da nciht enthalten.

    Kann mir vielleicht jemand sagen, wie dieses Kontextmenü heißt, wenn man einen Rechtsklick auf eine Blase in einem Blasendiagramm durchführt? Kann es evtl. sein, dass sich dieses aus mehreren Kontextmenüs zusammensetzt!?!

    Danke für die Hilfe !

    Grüße
    Kossy

    //EDIT

    Vielleicht noch wichtig zu erwähnen, es handelt sich um ein eingebettetes Diagramm
     
  14. Hallo nochmal !

    Ich muss nochmal nachfragen, weiß wirklich niemand von euch, wie dieses Kontextmenü mit Namen genannt wird, oder mit welcher ID man es innerhalb von CommandBars() ansprechen kann? Ich benötige das dringend und kann es nirgends im Netz darüber etwas brauchbares finden...

    Ich verstehe einfach nicht, warum man in Sachen VBA so etwas nirgends mal vernünftig nachschlagen kann, so wie hier im Fall Java:

    Java 2 Platform SE v1.4.2
     
  15. Hallo

    Versuch mal dies:

    Dim myCB As CommandBarPopup
    Set myCB = Application.CommandBars.FindControl(ID:=30022)

    ransi
     
Thema:

Erstellung eines eigenen Kontextmenü für ein Diagramm

Die Seite wird geladen...
  1. Erstellung eines eigenen Kontextmenü für ein Diagramm - Similar Threads - Erstellung Kontextmenü Diagramm

  2. 2 Benutzerdefiniertes Inhaltsverzeichnis erstellen

    in Microsoft Word Hilfe
    2 Benutzerdefiniertes Inhaltsverzeichnis erstellen: Hallo zusammen Ich stehe gerade vor dem Wald und seh die Bäume nicht - oder besser gesagt, völlige Leere im Kopf. Ich arbeite mit Office 2021 und versuche ein 2 Benutzerdefiniertes...
  3. Word Steuerelemente/Formular erstellen

    in Microsoft Word Hilfe
    Word Steuerelemente/Formular erstellen: Hallo, ich möchte ein Formular mit 20 kleinen Textfeldern erstellen, die auf einer Seite an vordefinierten Stellen sind. Das fertige Formular soll so angewendet werden, dass ich in die 20...
  4. Erstellung eines Dynamischen Kalenders

    in Microsoft Excel Hilfe
    Erstellung eines Dynamischen Kalenders: Guten Morgen an Alle, ich hoffe, es geht euch soweit gut :) Ich wende mich heute an euch, weil ich gerade vollkommen verzweifle und irgendwie so ganz und garnicht weiterkomme und irgendwie...
  5. Erstellung eines Dynamischen Kalenders (ggf. VBA)

    in Microsoft Word Hilfe
    Erstellung eines Dynamischen Kalenders (ggf. VBA): Guten Morgen an Alle, ich hoffe, es geht euch soweit gut :) Ich wende mich heute an euch, weil ich gerade vollkommen verzweifle und irgendwie so ganz und garnicht weiterkomme und irgendwie...
  6. Rechnung erstellen

    in Microsoft Excel Hilfe
    Rechnung erstellen: Hallo zusammen, meine Mutter hat einen kleinen mobilen Friseursalon und braucht dafür eine Rechnung. ich habe die Rechnung soweit fertig. nur hätte ich gerne ein Dropdown für die Adresse (mehr...
  7. Wie kann ich eine solche Seite erstellen?

    in Microsoft Word Hilfe
    Wie kann ich eine solche Seite erstellen?: Hallo, da ich mich mit Word leider überhaupt nicht auskenne, hoffe ich, dass mir hier jemand helfen kann, wie ich solch eine Seite wie im Anhang erstellen kann. Ich habe schon vieles versucht,...
  8. Kontextmenü mit VBA erstellen

    in Microsoft Access Hilfe
    Kontextmenü mit VBA erstellen: Hallo, versuche schon seit gestern ein Kontextmenü unt Access mit VBA zu erstellen. Leider funzt es einfach nicht. Habe mir auch schon das Beispiel von PC-Creativ angeschaut und das Beispiel...
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Auf dieser Website werden Cookies für die Zugriffsanalyse und Anzeigenmessung verwendet.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden