Anzeige
Archiv - Navigation
828to832
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
828to832
828to832
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Auf Modul in 2. Datei verweisen

Auf Modul in 2. Datei verweisen
17.12.2006 12:08:27
Jens
Hallo,
ich möchte von einem bestehenden Kontextmenü in Datei1 auf ein Modul in Datei2 verweisen, so dass dieses in Datei1 ausgeführt wird.
Beim erstellen des Kontextmenüs habe ich dies schon hinbekommen, allerdings ist das dort ein Button, den ich über Excelfunktionen einfach das Makro (in Modul der Datei2) zuweisen kann. Im Prinzip soll es genauso für die einzelnen Befehle im Kontextmenü geschehen, eben dann über VB.
Hintergrund ist, dass mehrere Dateien auf das gleiche Makro zugreifen sollen, um im Updatefall nicht in jeder Datei die Module ausgetauscht werden muss.
Beispiel:
'Neues Menü erstellen in Datei1 (Ausschnitt)
Set NeuesMenü = .Controls.Add(msoControlButton)
With NeuesMenü
.Caption = "Tagschicht"
.OnAction = "Tagschicht"
End With
'Dies ist, was der Eintrag "Tagschicht" in Datei2 dann ausführt:

Sub Tagschicht()
FesteSchicht
'MsgBox "Spalte: " & WoTag & " Tagwert: " & Tage
With Range(ActiveCell, ActiveCell.Offset(0, Tage))
.FormulaR1C1 = "T"
.Interior.ColorIndex = 40
.Font.Bold = True
.HorizontalAlignment = xlCenter
End With
End Sub

Ich erinnere mich, beim VBA-Lehrgang noch ein anderen Weg für die "Updatefunktion" behandelt zu haben, bekomme das leider nicht mehr zusammen. Vielleicht kann man die .bas-Datei viel einfacher über einen Update-Button in der Tabelle importieren und das alte bestehende Modul löschen (?).
Grüße vom Jens

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Auf Modul in 2. Datei verweisen
17.12.2006 12:12:03
Jan
Hi,
speicher den Code in einem Addin.
mfg Jan
AW: Auf Modul in 2. Datei verweisen
17.12.2006 12:57:09
Jens
Das ist schon mal ein guter Tipp, danke.
Hab die Makrodatei jetzt als Add-In, Module werden in Datei1 mitgeladen. Sub´s Public gemacht, damit man drauf zugreifen kann. Stell ich jetzt jedoch die Arbeitsmappe unter "VBA-Projekt" auf TRUE, wird meine Tabelle in Datei1 unsichtbar. Was mach ich falsch?
AW: Auf Modul in 2. Datei verweisen
17.12.2006 13:07:23
Jens
Noch was, im BV-Editor sind die beiden Dateien ja geöffnet, wenn das Add-In "True" ist. Das Sub in dem Add-In wird aber nicht gefunden, obwohl es Public ist.
AddIns sind als separate Mappe ohne...
17.12.2006 14:54:47
Luc:-?
...relevanten Blattinhalt anzulegen, Jens.
Das sollte man eigentlich in einem VBA-Kurs gelernt haben, sonst hat der wohl nicht viel getaugt (was ich für sehr wahrscheinlich halte). AddIns (...xla) sind immer unsichtbar! Ansonsten musst du das AddIn mit dem AddIn-Manager laden (Häkchen setzen) und es startet immer mit Excel. Außerdem findest du in Excel-Foren-Archiven noch 'ne Menge Aussagen (auch von mir) über sinnvolle Ablageordner für AddIns.
Gruß Luc :-?
Anzeige
AW: AddIns sind als separate Mappe ohne...
17.12.2006 16:33:11
Jens
Mit AddIns hatte ich noch gar nie was zu schaffen.
Hab mir jetzt diese Lösung zusammengeschustert:
Option Explicit

Sub Update()
With ActiveWorkbook.VBProject
.VBComponents.Remove .VBComponents("mdlSchichten")
End With
Dim Moduldateiname As Variant
Dim Modulname As Variant
'dies ist das einzufügende Modul
Moduldateiname = "G:\Pfad\mdlSchichten.bas"
Modulname = "mdlSchichten"
With ActiveWorkbook.VBProject
.VBComponents.Import Moduldateiname
.VBComponents(ActiveWorkbook.VBProject.VBComponents.Count).Name = Modulname
End With
End Sub

Danke für die Anregungen, die zum Ziel führten ^^
Jens
Anzeige
Anm: Dim-Anweisgg gehören an den Anfang! owT
17.12.2006 17:10:52
Luc:-?
:-?

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige