Live-Forum - Die aktuellen Beiträge
Datum
Titel
29.03.2024 13:14:12
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
740to744
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
740to744
740to744
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

VBA allgemein

VBA allgemein
10.03.2006 10:13:59
Thomas
Hallo,
ich habe zwei Makros, wobei ein bestimmter Teil in beiden gleich ist. Das eine ist ein Private Sub Worksheet_Change(ByVal Target As Range), das andere ein Private Sub CommandButton1_Click() würde mir schon reichen, das erste Makro im zweiten aufzurufen. Sauberer wäre es sicherlich den betreffenden Teil gesondert abzulegen und aufzurufen. Wie ist das möglich?
Danke,
Thomas

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: VBA allgemein
10.03.2006 10:16:57
u_
Hallo,
Code als Sub in ein Modul und in den Ereignisprozeduren aufrufen.
Gruß
Geist ist geil!
AW: VBA allgemein
10.03.2006 10:18:15
Ceci
Hallo thomas,
der Teil der in beiden gleich ist, fügst du in ein Modul im VB-Editor ein, z.B. so:

Sub Name_Des_Gleichen_Teils
'hier steht alles was gleich ist
End Sub

Dann rufst du in deinen anderen Prozeduren mit
Call Name_Des_Gleichen_Teils
diese neue Prozedur auf und fertig.
Hoffe das war verständlich,
mfg Ceci
AW: VBA allgemein
10.03.2006 10:26:15
Thomas
Danke Ceci,
das ist serh verständlich allerdings funktioniert es nicht ganz so, wie es soll.
In dem wird eine Variable(?) namens DName gefüllt. Deren Inhalt wird anscheinend nicht in die Private Subs übergeben.
Thomas
Anzeige
AW: VBA allgemein
10.03.2006 10:48:18
WernerB.
Hallo Thomas,
deklariere Deine Variable In einem Standardmodul ganz oben außerhalb der Prozedur(en):
Public DName As String
Viel Erfolg wünscht
WernerB.
P.S.: Dieses Forum lebt auch von den Rückmeldungen der Fragesteller an die Antworter !
AW: VBA allgemein
10.03.2006 10:23:08
IngGi
Hallo Thomas,
füge über Einfügen-Modul ein allgemeines Modul (heißt dann automatisch Modul1) in deine Datei ein. Dort schreibst du eine Prozedur, in die du den gemeinsamen Code aus deinen beiden Prozeduren hineinkopierst.
Sub Gemeinsamer_Codeteil()
blabla
End Sub In deine beiden Prozeduren kommt dann anstelle des gemeinsamen Codes ein Aufruf dieser neuen Prozedur:

Private Sub CommandButton1_Click()
blabla
Modul1.Gemeinsamer_Codeteil
End Sub

Private Sub Worksheet_Change(ByVal Target As Range)
blabla
Modul1.Gemeinsamer_Codeteil
End Sub
Gruß Ingolf
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige