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