Kann man Private Sub Workbook_SheetBeforeRightClick in Private Sub Workbook_Open integrieren?

Antwort

Nein, das ist nicht möglich. In VBA (Visual Basic for Applications) sind `Workbook_Open` und `Workbook_SheetBeforeRightClick` zwei eigenständige Ereignisprozeduren (Event Handler), die jeweils auf unterschiedliche Ereignisse reagieren: - `Workbook_Open` wird ausgeführt, wenn die Arbeitsmappe geöffnet wird. - `Workbook_SheetBeforeRightClick` wird ausgeführt, wenn in einem beliebigen Blatt der Arbeitsmappe mit der rechten Maustaste geklickt wird. Du kannst den Code, den du in beiden Prozeduren verwenden möchtest, in eine eigene Subroutine auslagern und diese dann von beiden Ereignisprozeduren aus aufrufen. Die Ereignisprozeduren selbst müssen aber getrennt im Code stehen und können nicht ineinander verschachtelt werden. **Beispiel:** ```vba Private Sub Workbook_Open() Call GemeinsameAktion End Sub Private Sub Workbook_SheetBeforeRightClick(ByVal Sh As Object, ByVal Target As Range, Cancel As Boolean) Call GemeinsameAktion End Sub Private Sub GemeinsameAktion() ' Dein gemeinsamer Code hier End Sub ``` **Fazit:** Eine Integration im Sinne von "ineinander verschachteln" ist nicht möglich, aber du kannst gemeinsamen Code auslagern und von beiden Prozeduren aufrufen.

Kategorie: Programmierung Tags: VBA Excel Makros
Neue Frage stellen

Verwandte Fragen

Ist Shapes("Rechteck 1").Visible = True korrekt in Excel-VBA?

Der Ausdruck `Shapes("Rechteck 1").Visible = True` ist in Excel-VBA **nicht korrekt**, da das `Visible`-Eigenschaftsmerkmal für Shapes in Excel-VBA **nicht existiert**. In Excel-VBA s... [mehr]

Ist folgender Excel-VBA-Code korrekt: HeightPt = Rows("4:" & Cells(49,19).Row).Height?

Der gezeigte Code ist in Excel-VBA **nicht korrekt** und führt zu einem Fehler. Das Problem liegt in der Syntax innerhalb der `Rows`-Funktion. Hier die Analyse: **Dein Code:** ```vba HeightPt =... [mehr]

Wie kann man in Excel-VBA einen RGB-Code aus einer Zelle lesen?

Um in Excel-VBA einen RGB-Code aus einer Zelle zu lesen und diesen z.B. für die Füllfarbe eines Shapes zu verwenden, kannst du wie folgt vorgehen: Angenommen, in Zelle **A1** steht der RGB-... [mehr]

Ist der Code wert = Range("Ergebnisse[Gab Bauteil lang]").Value in VBA fehlerfrei?

Der Code `wert = Range("Ergebnisse[Gab Bauteil lang]").Value` ist in VBA **nicht fehlerfrei**, wenn du auf eine Excel-Tabelle mit strukturierten Verweisen (Tabellenreferenzen) zugreifen m&ou... [mehr]

Gibt es If Not (Bedingung) Then in VBA für Excel?

Ja, in VBA für Excel gibt es die Möglichkeit, eine Bedingung mit **If Not (Bedingung) Then** zu prüfen. Das Schlüsselwort **Not** kehrt die Bedingung um. Hier ein Beispiel: ```vba... [mehr]

Ist 'Range(Cells(a,10):Cells(b,10)).Copy' im VBA-Code korrekt?

Die Syntax `Range(Cells(a,10):Cells(b,10)).Copy` ist in VBA (Visual Basic for Applications) **nicht korrekt**. In VBA muss der Bereich innerhalb der `Range`-Funktion als String oder als zwei separate... [mehr]

Wie kann ich mit VBA den Bereich 'Test' in Blatt 1 kopieren und in Blatt 2 ab Zelle B18 einfügen?

Um in Excel mit VBA einen Bereich namens "test" aus Blatt 1 zu kopieren und in Blatt 2 ab Zelle B18 einzufügen, kannst du folgenden VBA-Code verwenden: ```vba Sub BereichKopieren()... [mehr]

Wie kann man Zahlen in Excel-VBA ohne wissenschaftliches Format in eine .txt-Datei schreiben?

Um Zahlen wie 6,9999999999 in Excel-VBA beim Schreiben in eine .txt-Datei **nicht** im wissenschaftlichen Format (z. B. 6,9999999999E+00), sondern exakt so wie sie sind (mit allen Nachkommastellen), z... [mehr]

Wie lautet die Syntax, um in Excel VBA ein bestimmtes Tabellenblatt zu aktivieren?

Um in Excel VBA ein bestimmtes Tabellenblatt zu aktivieren, verwendest du folgende Syntax: ```vba Worksheets("Tabellenblattname").Activate ``` Ersetze dabei `"Tabellenblattname"`... [mehr]

Wie kann man eine per Access-VBA automatisch geöffnete Excel-Datei direkt wieder schließen?

Um eine Excel-Datei, die per Access-VBA geöffnet wurde, automatisch wieder zu schließen, solltest du das Excel-Objektmodell in deinem Access-VBA-Code verwenden. Hier ein Beispiel, wie das g... [mehr]