2017-01-23 4 views
0

Ich habe den folgenden Code:Compact-Datenbank mit variabler

Dim location As String 
location = DLookup("[db_location]", "locationandsetup") 

DBEngine.CompactDatabase "'" & location & "'\ReadinessDatabase_Backend.accdb", "'" & location & "'\ReadinessDatabase_Backup.accdb" 

Wenn ich es in die Tat umzusetzen, sagt er „nicht ein gültiger Dateiname“. Der Dateiname ist korrekt und die Variable "location" zeigt den richtigen Ort an, so dass ich nicht herausfinden kann, warum es sagt, dass es kein gültiger Dateiname ist. Irgendwelche Ideen?

Der Grund für die Verwendung der Variablen liegt darin, dass der Benutzer bei der Erstinstallation zunächst auswählt, wo sich die Datenbank befindet und dann in einer Tabelle gespeichert wird. Dann, wann immer sie den Ort benötigen, um irgendwelche Aktionen in der Datenbank auszuführen, wird sie den Ort verwenden, der in der Tabelle gespeichert ist. Ich habe diese Methode auf zahlreichen Subs verwendet und es funktioniert ohne Probleme, nur in dieser einen Aktion wird es nicht funktionieren.

Edit: db_location der Pfad ist Locationandsetup die Tabelle

ist, wenn ich den Weg aus der Tabelle in VBA kopieren und einfügen, die Variable zu ersetzen, es funktioniert.

Antwort

1

Streifen die Zitate:

DBEngine.CompactDatabase location & "\ReadinessDatabase_Backend.accdb", location & "\ReadinessDatabase_Backup.accdb" 
+0

Danke. Ich vergesse immer wieder die verschiedenen Befehle und wie sie mit den Variablen arbeiten. – user2002716