Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

relative Adressierung bei verknüpften Tabellen in Access

Mitglied: SarekHL

SarekHL (Level 3) - Jetzt verbinden

15.08.2007, aktualisiert 08:30 Uhr, 10851 Aufrufe, 1 Kommentar

Hallo zusammen,

Access bietet ja die Möglichkeit, die Tabellen einer Datenbank in einer separaten MDB-Datei zu haben und in der MDB-Datei, wo Formulare, Abfragen etc. liegen zu verknüpfen. Dies möchte ich jetzt gerne für eine Datenbank nutzen, die ich gerade für ein Kloster erstelle, damit ich leichter Änderungen an den Berichten und Formularen durchführen kann, die dort dann einfach eingespielt werden können. Der Datenbestand würde dann ja dabei nicht berührt werden.

Nun habe ich das Problem, daß diese Verknüpfung offenbar immer einen absoluten Pfad hat. Ich habe aber auf meinem Rechner eine andere Verzeichnisstruktur als der Rechner in dem Kloster, auf dem die Datenbank laufen soll.

Beide MDB-Dateien befinden sich im gleichen Verzeichnis, nur ist das bei mir eben e:\Entwicklung\access\klosterkartei und dort d:\daten\database\kartei. Gibt es eine Möglichkeit, die Tabellen mit einem relativen Pfad bzw. ohne Pfadangabe zu verknüpfen, daß er also die MDB-Datei mit den Tabellen im gleichen Verzeichnis sucht, in der sich die MDB-Datei mit den Abfragen etc. befindet, in der die Tabellen verknüpft sind. So daß es halt immer funktioniert, egal in welchem Verzeichnis die beiden Dateien sich befinden ...


Danke im Voraus,
André
Mitglied: AndreasHoster
15.08.2007 um 08:30 Uhr
Nein, das ist nicht möglich, zumindestens habe ich bei Access 2003 keine Möglichkeit gefunden.
Ich habe mir damit abgeholfen, ein VBA Skript zu schreiben, welches mir die Links anpasst.
Ich habe drei Datenbanken die verknüpfte Daten haben und alle liegen immer im selben Verzeichnis, allerdings heißt das nicht immer gleich.
Dieses Skript passt alle Verknüpfungen, die es in den drei Datenbanken finden kann und passt dann den Pfad an:

Function TabellenVerknuepfungAnpassen()
Rem Wir gehen davon aus, daß die anderen DBs immer im gleichen Verzeichnis liegen, wie die Ansichts-Datenbank

Dim oArrAccess(3) As Application
Rem Dim app As Application
Dim sPath As String
Rem Dim tbldef As TableDef
Dim sTemp As String

sPath = Application.CurrentProject.Path
Rem Erstmal alle DBs öffnen
Set oArrAccess(0) = Application
Set oArrAccess(1) = CreateObject("Access.Application.11")
oArrAccess(1).OpenCurrentDatabase sPath + "\austausch.mdb"
oArrAccess(1).SetOption "Auto Compact", True
oArrAccess(1).Visible = False
Set oArrAccess(2) = CreateObject("Access.Application.11")
oArrAccess(2).OpenCurrentDatabase sPath + "\lokal.mdb"
oArrAccess(2).SetOption "Auto Compact", True
oArrAccess(2).Visible = False
Rem Datenbanken durchgehen
For Each app In oArrAccess
Rem Tabellen in Datenbanken durchgehen
If Not (app Is Nothing) Then
For Each tbldef In app.CurrentDb.TableDefs
Rem Prüfen, ob verknüpfte Tabelle
If tbldef.Connect <> "" Then
Rem Verknüpfte Tabelle, Neuen Link zusammenbasteln und in das Tabellenobjekt schreiben
sTemp = tbldef.Connect
sTemp = Right(sTemp, Len(sTemp) - InStrRev(sTemp, "\"))
tbldef.Connect = ";Database=" & sPath & "\" & sTemp
Rem Neuen Link aktivieren
Call tbldef.RefreshLink
End If
Next
End If
Next
Rem Datenbanken schließen
For Each app In oArrAccess
app.CloseCurrentDatabase
app.Quit
Next
MsgBox "Umstellung fertig"
End Function

Eventuell hilft Dir das Skript ja, ein eigenes für die Anpassung zu schreiben.
Bitte warten ..
Ähnliche Inhalte
Hyper-V
IP-Adressierung Hyper-V
Frage von 113909Hyper-V4 Kommentare

Hallo, folgendes: Host (Windows 10 Pro) Server (Windows Server 2012 R2) mit Hyper-V virtualisiert. Ich möchte, dass der Host ...

CMS
Wordpress Shop relativ langsam
Frage von raxxis990CMS5 Kommentare

Hallo Leute; Für das Kleingewerbe meiner Frau habe ich eine Wordpress Seite mit WooCommerce erstellt. Das Ganze ist als ...

Batch & Shell

Powershell Hashtable - Relativ sinnvoll eingesetzt?

gelöst Frage von MarabuntaBatch & Shell3 Kommentare

Ich hab das mal geschrieben um für zukünftige Einsätze die Powershell Hastables einsetzen zu können. Habt ihr da evtl. ...

Router & Routing

Adressierung über einen ARP-Proxy

gelöst Frage von HanDokuRouter & Routing6 Kommentare

Ich versuche aus Deutschland ein Gerät mit der IP 192.168.1.10 in unserem Ferienhaus in Frankreich anzusprechen. Der Fernzugriff für ...

Neue Wissensbeiträge
iOS
WatchChat für Whatsapp
Tipp von Criemo vor 1 TagiOS3 Kommentare

Ziemlich coole App für WhatsApp User in Verbindung mit der Apple Watch. Gibts für iOS sowohl als auch für ...

iOS
IOS hat nen Cursor !!!
Tipp von Criemo vor 2 TageniOS5 Kommentare

Nette Funktion im iOS. iPhone-Mauszeiger aktivieren „Nichts ist nerviger, als bei einem Tippfehler zu versuchen, den iOS-Cursor an die ...

Off Topic
Avengers 4: Endgame - Erster Trailer
Information von Frank vor 4 TagenOff Topic2 Kommentare

Ich weiß es ist Off Topic, aber ich freue mich auf diesen Film und vielleicht geht es anderen hier ...

Webbrowser
Microsoft bestätigt Edge mit Chromium-Kern
Information von Frank vor 4 TagenWebbrowser5 Kommentare

Microsoft hat nun in seinem Blog bestätigt, dass die nächste Edge Version kein EdgeHTML mehr für die Darstellung benutzen ...

Heiß diskutierte Inhalte
Windows Netzwerk
Kerio. Kann keine Mails empfangen aber senden. Wer ist schuld. Kerio oder Windows domäne?
gelöst Frage von frosch2Windows Netzwerk33 Kommentare

Hallo, es existiert ein Problem bei uns mit dem mailen. Alle bestehenden Nutzer können mailen. Raus wie rein. Neuen ...

LAN, WAN, Wireless
WLAN und Ausmessung - Eine Glaubensfrage?
Frage von ptr2brainLAN, WAN, Wireless23 Kommentare

Liebe Experten, als Sys-Admin habe ich mir schon öfter die Frage gestellt, ob es sich beim Thema WLAN und ...

Hosting & Housing
VMware VM mit über 1TB RAM für S4HANA
Frage von Leo-leHosting & Housing22 Kommentare

Hallo zusammen, wer hat Erfahrng und kann mir einen Tipp zum sizing von S4HANA Systemen geben? Wir möchten, zunächst ...

Virtualisierung
Gebrauchte Server Hardware als Virtualisierungs-"Spielwiese"?
Frage von NixVerstehenVirtualisierung19 Kommentare

Einen wunderschönen guten Morgen zusammen, ich möchte mich gerne etwas tiefer mit dem Thema Virtualisierung beschäftigen und dazu ein ...