Verweise in VBA

Ja hallo allesamt,

ich versuche, in Excel 2003 mit mehreren Arbeitszeitmappen und einer Stammdatenmappe eine Arbeitszeit-Erfassung aufzubauen.
Die benötigten Funktionen habe ich zuerst in ein Modul in jeder AZ-Mappe geschrieben, da aber laufend Änderungen erfolgen, möchte ich dieses Modul in der Personl.xls ablegen, damit ich von allen AZ-Mappen aus auf nur noch ein Modul zugreifen kann und nicht dauernd alle Änderungen in jede Mappe kopieren muss. Den nötigen Verweis habe ich gemacht, aber dennoch bekomme ich den Fehler 35 (Sub/Function nicht definiert), egal, ob ich die Proz aus dem Arbeitsmappenmodul oder einem eingefügten Modul aus aufrufe. Alle Procs sind öffentlich, kein Modul private. Das Komische ist halt, dass manche Funktionen erkannt werden und andere nicht, obwohl die Deklaration gleich ist. (Roman Ende…)

??? Hilfe!!!

ich versuche, in Excel 2003 mit mehreren Arbeitszeitmappen und
einer Stammdatenmappe eine Arbeitszeit-Erfassung aufzubauen.
Die benötigten Funktionen habe ich zuerst in ein Modul in
jeder AZ-Mappe geschrieben, da aber laufend Änderungen
erfolgen, möchte ich dieses Modul in der Personl.xls ablegen,
damit ich von allen AZ-Mappen aus auf nur noch ein Modul
zugreifen kann und nicht dauernd alle Änderungen in jede Mappe
kopieren muss. Den nötigen Verweis habe ich gemacht, aber
dennoch bekomme ich den Fehler 35 (Sub/Function nicht
definiert), egal, ob ich die Proz aus dem Arbeitsmappenmodul
oder einem eingefügten Modul aus aufrufe. Alle Procs sind
öffentlich, kein Modul private. Das Komische ist halt, dass
manche Funktionen erkannt werden und andere nicht, obwohl die
Deklaration gleich ist. (Roman Ende…)

Hi Frank,
jetzt irritierst du mich aber gewaltig, gerade durch
„… dass manche Funktionen erkannt werden…“
und mit diesem erwähnten Verweis.

Welchen Verweis meinst du?

Mir gelang es bislang nicht eine Prozedur in der personl.xls durch reinen Aufruf des Namens zu starten.
Es ging nur mit Application.Run

Bei Add-Ins klappte es bei mir auch nicht, dortige Subs, Functions durch Namensaufrufe zu starten:frowning:

Probiert hatte ich es in XL97 und XL2000.

Gruß
Reinhard

Sub CallWkbC()
 Dim sFile As String
 Dim wkb As Workbook
 sFile = "PERSONL.XLS"
 On Error Resume Next
 Set wkb = Workbooks(sFile)
 On Error GoTo 0
 If wkb Is Nothing Then
 MsgBox "Die Testarbeitsmappe " & sFile & " wurde nicht gefunden!"
 Else
 Run sFile & "!Makro1"
 End If
End Sub

es wird Makro1 aus der PERSONL.XLS gestartet

auch zu finden bei
http://de.wikibooks.org/wiki/VBA_in_Excel_-_Grundlag…

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

@Reinhard:

jetzt irritierst du mich aber gewaltig

Tja so gehts mir schon die ganze Zeit wegen dem Kram…

Welchen Verweis meinst du?

Den ich in der AZ-Mappe auf die personl.xls gesetzt habe

Mir gelang es bislang nicht eine Prozedur in der personl.xls
durch reinen Aufruf des Namens zu starten.

Ich habe alle möglichen Funktionen und Subs in ca 20 verschiedenen Modulen in der Personl abgelegt, auf die ich - bis auf einigen komische Ausnahmen - problemlos zugreifen kann.

z.B.
Public Sub EvAn()
Application.EnableEvents = True
End Sub
Public Sub EvAus()
Application.EnableEvents = False
End Sub

Probiert hatte ich es in XL97 und XL2000.

Vielleicht ist das ein Grund…

Gruß
Frank

Ich versteh halt nicht warum ich auf einige subs, zB Standard-MsgBoxen oder solche:

Public Sub EvAn()
 Application.EnableEvents = True
End Sub
Public Sub EvAus()
 Application.EnableEvents = False
End Sub

zugreifen kann und auf andere nicht

http://de.wikibooks.org/wiki/VBA_in_Excel_-_Grundlag…

Danke für den link
Da werd ich noch weiter stöbern
Gruß
Frank