Neuigkeiten:

Ist euer Problem gelöst, dann bitte den Knopf "Thema gelöst" drücken!

Mobiles Hauptmenü

OpenDocument erzeugt Fehler (Compile error - Sub or function not defined)

Begonnen von nimora, Juli 05, 2018, 07:39:45

⏪ vorheriges - nächstes ⏩

nimora

Hi,

wie oben beschrieben, bekomme ich einen Fehler bei einem simplen Befehl, ein Dokument aus Access (2016) zu öffnen.
In der Datenbank ist der Pfad und der Name des Dokuments bereits hinterlegt.

OpenDocument Me.Dokumentpfad erzeugt dabei leider den obigen Fehler. ebenso GetOpenFilename

Ich habe dies aus einer meiner anderer DB's übernommen, in der es tadellos funktioniert.

Für ein paar Denkanstöße wäre ich dankbar.

VG

DF6GL

Hallo,

offensichtlich:

ZitatCompile error - Sub or function not defined
----> OpenDocument  und GetOpenFilename  existieren nicht..... ::)


ZitatIch habe dies aus einer meiner anderer DB's übernommen
---> offensichtlich ist das falsch. Vermutlich befinden sich die (Public-)Prozeduren in einem Standardmodul der funktionierenden DB.
Viele Grüße vom Bodensee
Franz, DF6GL

Hilfestellung:  http://www.access-o-mania.de/forum/index.php?topic=6969.msg118738#msg118738

Links und Tipps:
1.   http://v.hdm-stuttgart.de/~riekert/lehre/db-kelz/
1a. http://www.tinohempel.de/info/info/datenbank/normalisierung.htm
1b. https://support.office.com/de-de/article/Grundlagen-des-Datenbankentwurfs-eb2159cf-1e30-401a-8084-bd4f9c9ca1f5#bmterms
2.   http://www.donkarl.com
3.   https://web.archive.org/web/20201201233522/http://www.dbwiki.net/
4.   http://www.access-tutorial.de/
5.   http://www.tty1.net/smart-questions_de.htm
6.   http://access.joposol.com/accept

Last but not least:   < F1 > für Hilfe
;) Learning by doing not by spoon-feed ;)

Tipp: Find and Replace for Access

nimora

Besten Dank für die Antwort.

Leider verstehe ich den Inhalt nicht.

was meinst du damit, dass es falsch ist? und ich kann die Aussage "befindet sich die PublicProzedur in einem Standardmodul" nicht einordnen.

Könntest du da noch etwas genauer werden?

Lieben Dank

nimora

habe die Lösung gefunden, es fehlte eine Funktion, die in der alten DB vorhanden war:

Public Function OpenDocument(DocumentFile As String) As Long
    Dim ret As Long
    If Len(DocumentFile) > 0 Then
        ret = ShellExecute(Application.hWndAccessApp, "open", DocumentFile, vbNullChar, "", 1)
        If Err Then
            OpenDocument = 0
        ElseIf ret > 32 Then
            OpenDocument = -1
        Else
            OpenDocument = ret
        End If
    Else
        OpenDocument = 0
    End If
End Function