online 1
gast (50)

/ Forum / Datenbanken

DatenbankenDatenbanken

Fragevon stirlitz vom 15.10.2020, 16:38 Options

Access Tabelle kopieren / importieren

Hallo,

ich möchte in meine Access-Datenbank aus einer anderen DB eine Tabelle kopieren. Das Problem dabei ist, dass die andere DB verschlüsselt ist und ich immer das Passwort eingeben muss - das möchte ich vermeiden.

Meine nicht funktionierende Lösung:
  DoCmd.TransferDatabase _
  acImport, "Microsoft Access", "C:\AndereDB.accdb", acTable, "Tabelle1", "Tabelle2", False

Gruß


Antwort schreiben

Antwort 1 von Marie vom 17.10.2020, 02:25 Options

Ein Passwort ist halt dazu da, dass nicht jeder gerade ohne das Passwort an die Daten kommt, also kommste logischerweise mit dem einfachen Importbefehl auch nicht an die Daten.

Was ist daran jetzt unverständlich, das müsste Dir doch klar sein??

Geh halt mit dem Passwort, wenn Du befugt bist, in die andere Datenbank rein und exportier von dort die Tabelle.

Und wenn Du nicht befugt bist, dann frag jetzt am besten hier nicht mehr weiter :-(

Gruß Marie

Antwort 2 von OmaDuck vom 17.10.2020, 07:36 Options

Hallo,
mal davon ausgegangen, dass Du username und Passwort hast, sollte es mit
UID="der Datenbank-Anmeldename"
PWD="das dazugehörige Passwort"
funktionieren
Gruß
OmaDuck

Antwort 3 von stirlitz vom 17.10.2020, 10:33 Options

Hallo Zusammen,

vielleicht habe ich mich nicht klar genug ausgedrückt.
Versuch2:
Ich habe eine Datenbank erstellt und diese auf Front- und Backend aufgeteilt. Dann habe ich die BE verschlüsselt (d.h. das Passwort kenne ich) und mit FE neu verknüpft. So, jetzt möchte ich eine Tabelle aus der BE-Datei in Frontend kopieren (nicht verknüpfen). Das heißt, die Frontend muss jetzt eine Verknüpfung und eine Kopie der Tabelle enthalten.
Mit dem o.g. Beispiel funktioniert das auch, nur die lästige Passworteingabe muss weg. Wo muss ich das Passwort im VBA-Code einbauen?

Gruß stirlitz

Antwort 4 von OmaDuck vom 17.10.2020, 11:07 Options

Hallo,
das meinte ich. du kannst das passwort im Befehl fest "verdrahten", wenn Deine Sicherheitsleute das erlauben.
DoCmd.TransferDatabase _
acImport, "Microsoft Access", "C:\AndereDB.accdb", acTable, "Tabelle1", "Tabelle2", uid="benutzer", pwd="passwort", False
Gruß

Antwort 5 von stirlitz vom 17.10.2020, 14:20 Options

Hallo OmaDuck,

irgendwie funktioniert Deine Lösung bei mir nicht. Hast Du sie getestet? Vielleicht liegt es an der Schreibweise? Auf jeden Fall habe ich es erst mal so gelöst:
Dim DBS As Database
Dim WSS As Workspace

  Set WSS = DBEngine.Workspaces(0)
  Set DBS = WSS.OpenDatabase("C:\AndereDB.accdb", False, False, ";pwd=test")

  DoCmd.TransferDatabase _
  acImport, "Microsoft Access", DBS.Name, acTable, "Tabelle1", "Tabelle2", False, True
  
  DBS.Close
  Set DBS = Nothing

Dein Beispiel ist kürzer und es wäre schöner, wenn es bei mir funktionieren würde.


Gruß stirlitz

Antwort 6 von OmaDuck vom 20.10.2020, 08:38 Options

Hallo,

ausprobiert habe ich es nicht, aber ich hatte vor Urzeiten eine Anwendung bei das m.E. so funktioniert hat.
Deine Lösung ist doch auch nicht so viel länger und funktioniert . Ich würde das jetzt so hinnehmen.

Gruß
Liane

Ähnliche Themen

Hinweis

Diese Frage ist schon etwas älter, Sie können daher nicht mehr auf sie antworten. Sollte Ihre Frage noch nicht gelöst sein, stellen Sie einfach eine neue Frage im Forum..

Neue Einträge

Version: supportware 1.9.150 / 10.06.2022, Startzeit:Thu Jan 8 21:07:44 2026