Access-o-Mania

Access-Forum (Deutsch/German) => Access Programmierung => Thema gestartet von: risingstar am Mai 11, 2023, 17:19:28

Titel: Fehler 3170
Beitrag von: risingstar am Mai 11, 2023, 17:19:28
Hi Community,
ich möchte beim Laden das Formulars die Vernüpfungen aktualisieren.
    Dim neuerPfad As String
    Dim db As DAO.Database
    Dim tdf As DAO.TableDef
   
   
    neuerPfad = DLookup("[VerzeichnisTabellen]", "Stammdaten", "[ID] = 2")

    Set db = CurrentDb() 'db wird als aktuelle Datenbank gesetzt
    For Each tdf In db.TableDefs
   
    If tdf.Connect <> "" Then
        tdf.Connect = "neuerPfad"
        tdf.RefreshLink
    End If
    Next
    db.TableDefs.Refresh


End Sub
Bei RefreshLink kommt der Fehler 3170, installierbares ISAM nicht gefunden. Beim Wälzen der diversen Seiten über ISAM habe ich aber keine Anleitung gefunden, wie ich das beheben kann. Bei der Installierung von Treibern kenne ich mich nicht aus.
Hat jemand so etwas schon mal gelöst?
 Der String neuerPfad ist richtig:
E:\eLadenSbg Tabellen.accdb
LG Friedrich
Titel: Re: Fehler 3170
Beitrag von: Beaker s.a. am Mai 11, 2023, 17:54:55
Suche mal nach "relink tables".
Titel: Re: Fehler 3170
Beitrag von: risingstar am Mai 11, 2023, 20:45:49
Hallo Beaker,
aus den Beiträgen unter relink Tables werde ich nicht schlau.

Ich habe auch den Code von DonKarl probiert und immer beim RefreshLink popt der Fehler auf.
Titel: Re: Fehler 3170
Beitrag von: PhilS am Mai 12, 2023, 08:44:16
Zitat von: risingstar am Mai 11, 2023, 17:19:28tdf.Connect = "neuerPfad"
Kleiner Fehler, große Wirkung. Du weist hier wörtlich den Text "neuerPfad" als Pfad zu, in dem natürlich keine Datenbank mit Tabellen gefunden wird.

Richtig:

tdf.Connect = neuerPfad

Titel: Re: Fehler 3170
Beitrag von: risingstar am Mai 12, 2023, 09:12:00
Nach einer Reparatur der DB funktioniert der Code von Don Karl. Danke jedenfalls an beaker und PhilS.
@phil: Oh, natürlich, so kann das nicht gehen. Danke