Anzeige
Archiv - Navigation
1284to1288
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
Inhaltsverzeichnis

Kontextmenü auf Tabelle1 begrenzen

Kontextmenü auf Tabelle1 begrenzen
31.10.2012 06:30:33
Wolfgang
Hallo,
folgender Code erstellt ein Kontextmenü mit re. Maustaste; Wie muß ich den Code ändern, damit das Kontextmenü ausschließlich in Tabellenblatt1 erscheint und in den anderen Tabellenblätter wieder das übliche Menü? Läßt sich der Zusatz, der wohl immer im normalen Kontextmenü erscheint und der Formatierung dient, irgendwie abstellen? - Schon jetzt herzlichen Dank für die Rückmeldungen.
Gruß - Wolfgang
Sub EigenesKontextMenüErstellen()
Dim KonBef As CommandBarButton
With Worksheets("Tabelle1") 'das läuft irgendwie nicht
With CommandBars("Cell")
While .Controls.Count > 0
On Error Resume Next
.Controls(1).Delete
Wend
Set KonBef = .Controls.Add(msoControlButton)
With KonBef
.Caption = "Import1"
.FaceId = 480
.OnAction = "Name des Makros"
End With
Set KonBef = .Controls.Add(msoControlButton)
With KonBef
.Caption = "Import2"
.FaceId = 5
.OnAction = "Name des Makros"
End With
Set KonBef = .Controls.Add(msoControlButton)
With KonBef
.Caption = "Datenimport stoppen"
.FaceId = 50
.OnAction = "Name des Makros"
End With
End With
End With
End Sub

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

Betreff
Datum
Anwender
Anzeige
AW: Kontextmenü auf Tabelle1 begrenzen
31.10.2012 07:24:35
Marc
Moin!
Das Kontextmenü ist erstmal unabhängig vom gewählten Sheet.
Das bedeutet, das du jedesmal ein Sheet_Change-Ereignis auslösen mußt, in dem du abfragst, ob _ grad sheet 1 gewählt ist oder nicht. Dem entsprechende setzt du das Kontextmenü zurück oder modifizierst es. Zurücksetzten geht mit

Application.CommandBars("Cell").Reset
Gruß, MCO

AW: Kontextmenü auf Tabelle1 begrenzen
31.10.2012 08:01:50
Beverly
Hi Wolfgang,
ins Codemodul DieseArbeitsmappe diesen Code:
Option Explicit
Private Sub Workbook_Open()
EigenesKontextMenueErstellen
End Sub
Private Sub Workbook_Activate()
EigenesKontextMenueErstellen
End Sub
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Application.CommandBars("Cell").Reset
End Sub
Private Sub Workbook_Deactivate()
Application.CommandBars("Cell").Reset
End Sub
Private Sub Workbook_SheetActivate(ByVal Sh As Object)
If Sh.Name = "Tabelle1" Then
EigenesKontextMenueErstellen
Else
Application.CommandBars("Cell").Reset
End If
End Sub
und in ein allgemeines Modul diesen Code:
Sub EigenesKontextMenueErstellen()
Dim KonBef As CommandBarButton
If ActiveSheet.Name = "Tabelle1" Then
With CommandBars("Cell")
While .Controls.Count > 0
On Error Resume Next
.Controls(1).Delete
Wend
Set KonBef = .Controls.Add(msoControlButton)
With KonBef
.Caption = "Import1"
.FaceId = 480
.OnAction = "Name des Makros"
End With
Set KonBef = .Controls.Add(msoControlButton)
With KonBef
.Caption = "Import2"
.FaceId = 5
.OnAction = "Name des Makros"
End With
Set KonBef = .Controls.Add(msoControlButton)
With KonBef
.Caption = "Datenimport stoppen"
.FaceId = 50
.OnAction = "Name des Makros"
End With
End With
End If
End Sub


Anzeige
Danke Marc und Beverly !
31.10.2012 18:46:23
Wolfgang
Hallo Marc und Beverly,
Danke für Eure Rückmeldung und die Hinweise bzw. den Code. Ich habe ihn im Laufe des Tages "eingebaut" und getestet er läuft soweit tadellos. Es taucht allerdings ein Phänomen auf, welches ich noch nicht erklären kann, aber nichts mit diesem Code direkt zu tun haben wird. Wenn ich über einen anderen Code (mit Makrorekorder aufgenommen) Daten aus einer Textdatei importiere -ausglöst über das Kontextmenü-, tut sich mit Deinem Code, Beverly, nichts mehr - selbst ein manuelles Auslösen imponiert VBA nicht. Will das in ruhiger Minute mal mit dem Debugger durchchecken um zu schauen, wo der Bock liegen könnte. Einstweilen nochmals vielen Dank !
Gruß - Wolfgang
Anzeige

302 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige