
30-06-11, 21:25
|
| Όνομα: Γιώργος Έκδοση λογισμικού Office: Ms-Office 2010 Γλώσσα λογισμικού Office: Ελληνική, Αγγλική | | Εγγραφή: 18-06-2010
Μηνύματα: 3.674
| |
Καλησπέρα στην παρέα
Απόστολε, στη ΒΔ που επισυνάπτω , αν κάνουμε κλικ στο κουμπί της φόρμας « frmCreateDB», δημιουργείται μία νέα ΒΔ και ακολούθως αντιγράφονται σ’ αυτήν οι πίνακες της τρέχουσας.
Η λειτουργικότητα του κουμπιού, οφείλεται στον κώδικα: Κώδικας: Private Sub cmdCreateDB_Click()
Dim ws As Workspace
Dim db As Database
Dim LFilename As String, dirName As String
Dim Tbl As DAO.TableDef
Dim x As Variant, j As Integer
Set ws = DBEngine.Workspaces(0)
'Διαδρομή και όνομα αρχείου (Να προσαρμοστεί στις ανάγκες)
LFilename = "c:\Test\NewDB.mdb"
'Αν δεν υπάρχει ο φάκελος, δημιουργείται
x = Split(LFilename, "\")
For j = LBound(x) To UBound(x) - 1
If j = LBound(x) Then dirName = x(LBound(x)) Else dirName = dirName & "\" & x(j)
If Dir(dirName, vbDirectory) = "" Then MkDir dirName
Next
'Αν υπάρχει το αρχείο διαγράφεται
If Dir(LFilename) <> "" Then Kill LFilename
'Δημιουργία νέου αρχείου *.mdb
Set db = ws.CreateDatabase(LFilename, dbLangGeneral)
'Αντιγραφή των πινάκων της τρέχουσας ΒΔ στη νέα
For Each Tbl In CurrentDb.TableDefs
If Left(Tbl.Name, 4) <> "MSys" Then
DoCmd.TransferDatabase acExport, "Microsoft Access", LFilename, _
acTable, Tbl.Name, Tbl.Name, False
End If
Next
MsgBox "Η εξαγωγή των πινάκων ολοκληρώθηκε"
db.Close
Set db = Nothing
End Sub
Όπως βλέπεις στον κώδικα, το πλήρες όνομα της νέας βάσης είναι: "c:\Test\NewDB.mdb" Συνεπώς θα πρέπει να το προσαρμόσεις στις ανάγκες σου.
Δοκίμασε τον κώδικα, μήπως κάτι μου διέφυγε.
Φιλικά/Γιώργος
|