Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

Ein Makro aus einem Worksheet für diverse andere nutzen
#1
Hallo zusammen,

ich habe in einem Arbeitsblatt ein Makro der dann bei Klick mit rechter Maustaste auf Zelle A1 diverse Formatierungen etc. macht.
Diese Befehle hätte ich gerne für andere Arbeitsblätter (Jedoch nicht für alle).

Gibt es eine Möglichkeit die kompletten Befehle als irgendwas zu deklarieren und von der anderen Arbeitsmappe darauf zurück zu greifen? Es sind in diesem Fall ca. 10 Worksheets. Ich kann natürlich auch den kompletten Befehl einfach in die jeweiligen Blätter kopieren, schöner wäre es jedoch wenn es anders geht =)

(Nochmal: Es geht nicht um die komplette Arbeitsmappe, sondern um einige Arbeitsblätter)

Vielen Dank vorab.

Liebe Grüße
Antworten Top
#2
Hallo,

kopiere dein bestehendes Makro in in allgemeines Modul (Einfügen - Modul), zB so

Code:
Sub Formatieren()
'Mach was
'Mach nochwas
'Und einer geht noch
End Sub


In den Modulen der gewünschten Tabellenblätter schreibst du dann jeweils

Code:
Private Sub Worksheet_BeforeRightClick(ByVal Target As Range, Cancel As Boolean)
Call Formatieren
End Sub
Schöne Grüße
Berni
Antworten Top
#3
Hallo Berni,

klasse Idee.

Hat geklappt Danke =)
Antworten Top
#4
Hallo,

ich würde das mit einem Ereignismakro im Modul "DieseArbeitsmappe" machen:

Microsoft Excel Objekt DieseArbeitsmappe
Option Explicit 

Private Sub Workbook_SheetBeforeRightClick(ByVal Sh As Object, ByVal Target As Range, Cancel As Boolean)
 Select Case Sh.Name
   Case "Tabelle1", "Tabelle3"
     If Target.Address = "$A$1" Then
       '...
       '...
     End If
 End Select
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


Gruß Uwe
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste