Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
372to376
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
372to376
372to376
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Kontextmenue löschen ?

Kontextmenue löschen ?
30.01.2004 07:38:04
Josef
Guten Morgen!
Mit nachstehendem Makro kann ich mit der rechten Maustaste über das Kontextmenue Makros starten.
Wenn ich jedoch die Arbeitsmappe schliesse so wird der Eintrag im Kontextmenue nicht gelöscht.Beim nächsten Aufruf der Arbeitsmappe habe ich somit schon zwei Kontexteinträge mit gleichem Namen. u.s.w.
1.Frage Was müßte ich bitte tun, damit dies nicht passiert?
2.Frage Wie lösche ich bitte die vielen gleichnamigen Kontexteinträge wieder raus?
Danke

Josef

9
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Makrocode leider vergessen
30.01.2004 07:44:01
Josef

Private Sub Workbook_BeforeClose(Cancel As Boolean)
On Error Resume Next
Application.CommandBars("Cell") _
.Controls("SVAdgW").Delete
On Error GoTo 0
End Sub


Private Sub Workbook_Open()
Dim oPopUp As CommandBarControl
Dim oBtn As CommandBarButton
With Application.CommandBars("Cell")
On Error Resume Next
.Controls("SVAdgW").Delete
On Error GoTo 0
Set oPopUp = .Controls.Add(msoControlPopup)
End With
oPopUp.Caption = "SVAdgW Monatsdruck"
Set oBtn = oPopUp.Controls.Add
With oBtn
.Caption = "Jänner"
.OnAction = "VJänner"
.Style = msoButtonCaption
End With
Set oBtn = oPopUp.Controls.Add
With oBtn
.Caption = "Februar"
.OnAction = "VFebruar"
.Style = msoButtonCaption
End With
Set oBtn = oPopUp.Controls.Add
With oBtn
.Caption = "März"
.OnAction = "VMärz"
.Style = msoButtonCaption
End With
Set oBtn = oPopUp.Controls.Add
With oBtn
.Caption = "April"
.OnAction = "VApril"
.Style = msoButtonCaption
End With
Set oBtn = oPopUp.Controls.Add
With oBtn
.Caption = "Mai"
.OnAction = "VMai"
.Style = msoButtonCaption
End With
Set oBtn = oPopUp.Controls.Add
With oBtn
.Caption = "Juni"
.OnAction = "VJuni"
.Style = msoButtonCaption
End With
Set oBtn = oPopUp.Controls.Add
With oBtn
.Caption = "Juli"
.OnAction = "VJuli"
.Style = msoButtonCaption
End With
Set oBtn = oPopUp.Controls.Add
With oBtn
.Caption = "August"
.OnAction = "VAugust"
.Style = msoButtonCaption
End With
Set oBtn = oPopUp.Controls.Add
With oBtn
.Caption = "September"
.OnAction = "VSeptember"
.Style = msoButtonCaption
End With
Set oBtn = oPopUp.Controls.Add
With oBtn
.Caption = "Oktober"
.OnAction = "VOktober"
.Style = msoButtonCaption
End With
Set oBtn = oPopUp.Controls.Add
With oBtn
.Caption = "November"
.OnAction = "VNovember"
.Style = msoButtonCaption
End With
Set oBtn = oPopUp.Controls.Add
With oBtn
.Caption = "Dezember"
.OnAction = "VDezember"
.Style = msoButtonCaption
End With
End Sub

Anzeige
AW: Makrocode leider vergessen
30.01.2004 07:52:31
GraFri
Hallo
Bau diese Zeile ein
'stellt wieder das Standardkontextmenü her
CommandBars("Cell").Reset
Mit freundlichen Grüßen, GraFri
AW: Makrocode leider vergessen
30.01.2004 08:10:53
Josef
Hallo Grafri!
Wo bastle ich das bitte ein?
Bei Workbook Close oder Open.
Zur Zeit habe ich komischerweise überhaupt kein Kontextmenue mehr
Josef
AW: Makrocode leider vergessen
30.01.2004 07:56:37
Armin
Hallo Josef,
füge mal oben nach
With CommandBars("Cell")
While .Controls.Count > 0
On Error Resume Next
.Controls(1).Delete
wend
ein.
AW: Makrocode leider vergessen
30.01.2004 08:09:12
Josef
Hallo!
Habs gemacht und jetzt ist überhaupt kein Kontextmenue mehr da.Wie bekokmme ich das wieder rein?

Josef
Anzeige
AW: Makrocode leider vergessen
30.01.2004 08:20:16
Armin
Benutze mal diesen Code

Private Sub Workbook_BeforeClose(Cancel As Boolean)
On Error Resume Next
Application.CommandBars("Cell").Reset
End Sub


Private Sub Workbook_Open()
Dim oPopUp As CommandBarControl
Dim oBtn As CommandBarButton
With Application.CommandBars("Cell")
While .Controls.Count > 0
On Error Resume Next
.Controls(1).Delete
Wend
Set oPopUp = .Controls.Add(msoControlPopup)
End With
oPopUp.Caption = "SVAdgW Monatsdruck"
Set oBtn = oPopUp.Controls.Add
With oBtn
.Caption = "Jänner"
.OnAction = "VJänner"
.Style = msoButtonCaption
End With
Set oBtn = oPopUp.Controls.Add
With oBtn
.Caption = "Februar"
.OnAction = "VFebruar"
.Style = msoButtonCaption
End With
Set oBtn = oPopUp.Controls.Add
With oBtn
.Caption = "März"
.OnAction = "VMärz"
.Style = msoButtonCaption
End With
Set oBtn = oPopUp.Controls.Add
With oBtn
.Caption = "April"
.OnAction = "VApril"
.Style = msoButtonCaption
End With
Set oBtn = oPopUp.Controls.Add
With oBtn
.Caption = "Mai"
.OnAction = "VMai"
.Style = msoButtonCaption
End With
Set oBtn = oPopUp.Controls.Add
With oBtn
.Caption = "Juni"
.OnAction = "VJuni"
.Style = msoButtonCaption
End With
Set oBtn = oPopUp.Controls.Add
With oBtn
.Caption = "Juli"
.OnAction = "VJuli"
.Style = msoButtonCaption
End With
Set oBtn = oPopUp.Controls.Add
With oBtn
.Caption = "August"
.OnAction = "VAugust"
.Style = msoButtonCaption
End With
Set oBtn = oPopUp.Controls.Add
With oBtn
.Caption = "September"
.OnAction = "VSeptember"
.Style = msoButtonCaption
End With
Set oBtn = oPopUp.Controls.Add
With oBtn
.Caption = "Oktober"
.OnAction = "VOktober"
.Style = msoButtonCaption
End With
Set oBtn = oPopUp.Controls.Add
With oBtn
.Caption = "November"
.OnAction = "VNovember"
.Style = msoButtonCaption
End With
Set oBtn = oPopUp.Controls.Add
With oBtn
.Caption = "Dezember"
.OnAction = "VDezember"
.Style = msoButtonCaption
End With
End Sub

Anzeige
AW: Makrocode leider vergessen
30.01.2004 08:27:04
Josef
Hallo Armin!
Danke für Deine Hilfe.
Es würde jetzt passen. Nur beim Öffnen der Mappe verschwindet der Rest der Kontextmenueeinträge (kopieren, ausschneiden u.s.w.).Das sollte eigentlich nicht passieren.
Gibt es denn keine Möglichkeit,mein Menue nur anzuhängen und beim Schließen wieder abzuhängen?
Josef
AW: Makrocode leider vergessen
30.01.2004 08:37:11
Armin
Hallo Josef,
öffne das Kontext nicht mit Workbook_Open -> Sub Kontextmenue()
sondern z.Beispiel rechte Maustaste

Private Sub Worksheet_BeforeRightClick(ByVal Target As Excel.Range, Cancel As Boolean)
Cancel = False
Select Case Target.Column ' oder Row für Zeilen weise - auch kombiniert
Case 2,4,5
Call Kontextmenue
End Select
End Sub

Die Deaktivierung muss dann natürlich auch nach der Benutzung erfolgen!
viel Spass
Anzeige
DANKE!
30.01.2004 14:29:58
Josef
Danke Armin

Josef

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige