Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
432to436
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
432to436
432to436
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Eigene Kontextmenüs

Eigene Kontextmenüs
27.05.2004 01:42:42
Frank
Hallo Forum,
VBA nein trifft es nicht ganz, gut aber auch nicht.
Ich möchte, wenn ganze Zeilen/Spalten selektiert werden, jeweils
eigene Kontextmenüs anzeigen. Das Erstellen der Menüs ist gekläärt.
Nur mit der Formulierung der bedingung, wann die angezeigt werden
sollen, komme ich nicht klar, mal laut gedacht:
Wenn eine oder mehrere ganze Zeilen/Spalten markiert sind dann
zeige meine eigenen Menüs
sonst
zeige die normalen excelmenüs
Ich hoffe auf euch Profis und schon mal danke.
Gruß Frank

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Eigene Kontextmenüs
Frank
Hallo Hans,
danke, aber ich darf hier in der Firma nichts runterladen.
Vielleicht kannst du die Lösung hier einstellen?
Gruß Frank
Anzeige
AW: Eigene Kontextmenüs
Andreas
Hallo Frank,
ich nehme mir mal die Freiheit den Code hier reinzukopieren, nachdem Hans W. Herber die Datei ja sowieso für alle freigegeben hat und es wohl auch kein Problem sein dürfte, den Code dann hier reinzukopieren. Das Ganze funktioniert dann mit der Einfach- oder Mehrfachselektion von Zeilen, nicht von Spalten. Aber die Anpassung sollte nicht allzuschwer sein ...
Beste Grüße
Andreas
Im Arbeitsblatt, in dem das Ganze passieren soll im VBA Editor einfügen:
Option Explicit

Private Sub Worksheet_BeforeRightClick(ByVal Target As Range, Cancel As Boolean)
Dim oBar As CommandBar
Dim oBtn As CommandBarButton
If Selection.Columns.Count = 256 Then
Cancel = True
On Error GoTo ERRORHANDLER
Set oBar = Application.CommandBars.Add("MyContextBar", msoBarPopup)
Set oBtn = oBar.Controls.Add
With oBtn
.Caption = "Meldung"
.OnAction = "Meldung"
.Style = msoButtonCaption
End With
oBar.ShowPopup
End If
ERRORHANDLER:
On Error Resume Next
Application.CommandBars("MyContextBar").Delete
Resume
End Sub

In einem separaten CodeModul einfügen (so dass es für alle Subs verfügbar ist):
Option Explicit
Sub Meldung()
If Selection.Rows.Count = 1 Then
MsgBox "Zeile " & Selection.Address(False, False) & " markiert!"
Else
MsgBox "Zeilen " & Selection.Address(False, False) & " markiert!"
End If
Application.CommandBars("MyContextBar").Delete
End Sub
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige