Meinews.de  


Zurück   Meinews.de > Forum > Newsgroups microsoft.public.de.* 1 Forum > Newsgroup microsoft.public.de.access
Registrieren FAQ Benutzerliste Kalender Suchen Heutige Beiträge Alle Foren als gelesen markieren

Newsgroup microsoft.public.de.access Forum microsoft.public.de.access

Antwort
 
Themen-Optionen Ansicht
  #11  
Alt 10-27-2009, 10:42 PM
Karl Donaubauer
 
Beiträge: n/a
Standard Re: Acc2007 komprimieren über VBA?

Sten Schmidt wrote:
> schrieb Gunter Avenius:
>> ...
>> gerade getestet...
>> die richtige idMso wäre : "FileCompactAndRepairDatabase"....
>>
>> aber tut nicht ;-)
>> Es erscheint eine Meldung das die geöffnete DB nicht komprimiert
>> werden kann über Code / Makro... und man solle über das Office
>> Menü / Datenbank verwalten / Komprimieren und reparieren gehen :-(

>
> Könnte es sein dass beim Weg über das Menü Access das File schließt,
> komprimiert und dann wieder öffnet?


Klar.

> Für mich klingt es logisch, dass man das nicht per VBA auslösen
> kann...


Joo, nur verhalten sich drei Access-Versionen (A00-A03) halt
so unlogisch, dass ebendieser Menüaufruf per VBA funktioniert.
s. www.donkarl.com?FAQ6.6

--
Servus
Karl
********* Ich beantworte keine Access-Fragen per Email. *********
Access-FAQ: http://www.donkarl.com + Anmeldung und Info zur
Access-Entwickler-Konferenz (AEK12), Oktober 2009, Nürnberg

Mit Zitat antworten
Alt Today
Advertising
Google Adsense
 
This advertising will not be shown
in this way to registered members.
Register your free account today
and become a member on
Meinews.de
Standard Sponsored Links

  #12  
Alt 10-28-2009, 09:04 AM
Björn Benatzky
 
Beiträge: n/a
Standard Re: Acc2007 komprimieren über VBA?

Hallo Alfred,

"Alfred Nitzschke" wrote:

> Hallo und Danke an alle.
>
> Es ist für mich nicht kriegsentscheidend, die DB während der Laufzeit zu
> komprimieren.
> Falls aber doch noch jemand eine Lösung findet, wird Donkarl sie sicher in
> 6.6 hinzufügen... - wenn der "Finder" es meldet.
>
> Ciao
> Alfred


Ich wollte das einmal für meine eigene DB (A03) realisieren und habe es nur
über eine weitere DB geschafft:

**** Neue DB erstellen und vorgefertigtes Formular zum Komprimieren der DB
transferieren ***

Dim NewDatabase As Database
Dim prop As Property
Dim Compactor As String

Compactor = Left(CurrentDb.Name, Len(CurrentDb.Name) - 4) & "Compactor.mdb"
Set NewDatabase = DBEngine.Workspaces(0).CreateDatabase(Compactor,
dbLangGeneral)
DoCmd.CopyObject Compactor, , acForm, "frmCompactDB"
Set prop = NewDatabase.CreateProperty("StartupForm", dbText, "frmCompactDB")
NewDatabase.Properties.Append prop

**** Datenbankpfad wird in die neue DB übertragen ***

Dim NewTable As TableDef
Dim Field1 As Field
Dim Entity As Recordset

Set NewTable = NewDatabase.CreateTableDef("tblTab1")
Set Field1 = NewTable.CreateField("Datenbankpfad", dbText, 255)
NewTable.Fields.Append Field1
NewDatabase.TableDefs.Append NewTableSet Entity =
NewDatabase.OpenRecordset("tblTab1")
Entity.AddNew
Entity.Fields("Datenbankpfad").Value = CurrentDb.Name
Entity.Update
NewDatabase.Close

**** Aufruf der neuen DB ***

Dim AccessApplication As Object

Set AccessApplication = CreateObject("Access.Application")
AccessApplication.OpenCurrentDatabase (Compactor)
DoCmd.Quit acQuitSaveAll

**** Über Timer im aufgerufenen Formular ***

Dim sDatabase As String
Dim sDummyDB As Variant
Dim db As DAO.Database

sDatabase = DLookup("Datenbankpfad", "tblTab1")
sDummyDB = CurrentProject.Path & "\Dummy.mdb"
DBEngine.CompactDatabase sDatabase, sDummyDB

Kill DLookup("Datenbankpfad", "tblTab1")
Name sDummyDB As DLookup("Datenbankpfad", "tblTab1")
Mit Zitat antworten
 
Antwort


Themen-Optionen
Ansicht

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen
Es ist dir nicht erlaubt, auf Beiträge zu antworten
Es ist dir nicht erlaubt, Anhänge anzufügen
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten

vB Code ist An
Smileys sind An
[IMG] Code ist An
HTML-Code ist Aus


Alle Zeitangaben in WEZ. Es ist jetzt 01:39 AM Uhr.



Powered by: vBulletin Version 3.6.7 (Deutsch)
Copyright ©2000 - 2010, Jelsoft Enterprises Ltd.
Forum SEO by Zoints