NamedRange.BeforeRightClick Ereignis

Definition

Tritt auf, wenn mit der rechten Maustaste auf das NamedRange-Steuerelement geklickt wird, bevor die Standardklickaktion mit der rechten Maustaste ausgeführt wird.

event Microsoft.Office.Interop.Excel.DocEvents_BeforeRightClickEventHandler BeforeRightClick;

Ereignistyp

DocEvents_BeforeRightClickEventHandler

Beispiele

Im folgenden Codebeispiel wird ein erstellt NamedRange und dann alle Zellen mit dem Text aufgefüllt Delete . Um die Ereignisse zu testen, klicken Sie mit der rechten Maustaste auf eine der Zellen, damit ein Rahmen um den Bereich herum angezeigt wird, und doppelklicken Sie dann auf eine der Zellen, um den Bereich zu löschen.

Diese Version ist für eine Anpassung auf Dokument Ebene vorgesehen.

Microsoft.Office.Tools.Excel.NamedRange clickRange;
private void ClickToChangeRange()
{
    clickRange = this.Controls.AddNamedRange(
        this.Range["B2", "D4"], "clickRange");
    clickRange.Value2 = "Delete";
    clickRange.BeforeDoubleClick += new 
        Microsoft.Office.Interop.Excel.
        DocEvents_BeforeDoubleClickEventHandler(
        clickRange_BeforeDoubleClick);
    clickRange.BeforeRightClick += new 
        Microsoft.Office.Interop.Excel.
        DocEvents_BeforeRightClickEventHandler(
        clickRange_BeforeRightClick);
}

void clickRange_BeforeRightClick(
    Excel.Range Target, ref bool Cancel)
{
    clickRange.BorderAround(missing, Excel.XlBorderWeight.xlThick,
        Excel.XlColorIndex.xlColorIndexAutomatic);
    Cancel = true;
}

void clickRange_BeforeDoubleClick(
    Excel.Range Target, ref bool Cancel)
{
    clickRange.Clear();
    Cancel = true;
}
Private clickRange As Microsoft.Office.Tools.Excel.NamedRange

Private Sub ClickToChangeRange()
    clickRange = Me.Controls.AddNamedRange(Me.Range("B2", "D4"), _
        "clickRange")
    clickRange.Value2 = "Delete"
    AddHandler clickRange.BeforeDoubleClick, _
        AddressOf clickRange_BeforeDoubleClick
    AddHandler clickRange.BeforeRightClick, _
        AddressOf clickRange_BeforeRightClick
End Sub


Sub clickRange_BeforeRightClick(ByVal Target As Excel.Range, _
    ByRef Cancel As Boolean)
    clickRange.BorderAround(, Excel.XlBorderWeight.xlThick, _
        Excel.XlColorIndex.xlColorIndexAutomatic, )
    Cancel = True
End Sub


Sub clickRange_BeforeDoubleClick(ByVal Target As _
    Excel.Range, ByRef Cancel As Boolean)
    clickRange.Clear()
    Cancel = True
End Sub

Diese Version ist für ein Add-in auf Anwendungsebene vorgesehen.

Hinweise

Wenn Sie mit der rechten Maustaste auf überlappende Steuer NamedRange Elemente klicken, wird das-Ereignis für jedes der Überlappungen

Gilt für