Hallo,
(09.07.2018, 10:07)RPP63 schrieb: (es gibt wohl Anleitungen im Netz, per .CopyPicture und .PasteFace o.ä. ...
wie
hier z.B..
Das habe ich mal umgesetzt. Die Farben und deren Position im Menü werden im Sheet Farben festgelegt.
Der Bereich, in dem das Farbmenü bei Rechtsklick aufpoppt, ist jetzt auf Tabelle1 L12:N15 festgelegt.
Farben | A | B |
1 | Position im Menü | Farbe |
2 | 10 | |
3 | 1 | |
4 | 3 | |
5 | 2 | |
6 | 4 | |
7 | 5 | |
8 | 6 | |
9 | 7 | |
10 | 9 | |
11 | 8 | |
Microsoft Excel Objekt Tabelle1Option Explicit
Private Sub Worksheet_BeforeRightClick(ByVal Target As Range, Cancel As Boolean)
Dim lngZ As Long
Dim rngFarben As Range, rngP As Range
Dim varP As Variant
If Not Application.Intersect(Range("L12:N15"), Target) Is Nothing Then
Cancel = True 'verhindert die Anzeige des normalen Kontextmenüs
Set rngFarben = Worksheets("Farben").Cells(1, 1).CurrentRegion
On Error Resume Next
Application.CommandBars("MeineFarben").Delete
With Application.CommandBars.Add("MeineFarben", msoBarPopup, , True)
For lngZ = 1 To rngFarben.Rows.Count - 1
With .Controls.Add(msoControlButton)
varP = Application.Match(lngZ, rngFarben.Columns(1), 0)
If Not IsError(varP) Then
' holt sich die Farbe aus der Arbeitsblatt Farben
Set rngP = rngFarben.Cells(varP, 2)
rngP.CopyPicture xlScreen, xlBitmap
.PasteFace
.Parameter = rngP.Interior.Color
.OnAction = "Hintergrundfarbe_setzen"
Else
.Parameter = xlNone
Err.Clear
End If
End With
Next lngZ
With .Controls.Add(msoControlButton)
.FaceId = 6849
'.Caption = "Farblos"
.Parameter = -4142
.OnAction = "Hintergrundfarbe_setzen"
End With
.ShowPopup
.Delete
End With
End If
End Sub
VBA/HTML-CodeConverter, AddIn für Office 2002-2016 - in VBA geschrieben von Lukas Mosimann. Projektbetreuung:RMH Software & Media
Code erstellt und getestet in Office 14 - mit VBAHTML 12.6.0
Modul Modul1Option Explicit
Option Private Module
Sub Hintergrundfarbe_setzen()
Selection.Interior.Color = Application.CommandBars.ActionControl.Parameter
End Sub
VBA/HTML-CodeConverter, AddIn für Office 2002-2016 - in VBA geschrieben von Lukas Mosimann. Projektbetreuung:RMH Software & Media
Code erstellt und getestet in Office 14 - mit VBAHTML 12.6.0
Farbauswahl per Kontextmenue Kuwer.xlsm (Größe: 20,61 KB / Downloads: 9)
Gruß Uwe