Hittar inte att det går att komprimera min Access databas från ett makro i den. Någon som vet om det finns något sätt att göra det? Jag känner inte till något sätt, du får nog göra det via VBA-kod istället. Det går att göra via ADOX-objektet, se [Komprimera en ADO Jet databas] ADOX kan du inte anropa från ett Macro, så det blir via VBA där också. Men eftersom funktionen finns i Access är det bara omständigt att blanda in ADOX, då får du bara extra beroenden. Mm, lite skumt. Tidigar fanns en instruktion som man kunde använda i macron som hette "Utför menykommando" och som användes för att aropa en funktion som fanns bland menyerna. Den hade kunnat användas, men tyvärr verkar denna vara borta nu... Ett problem i sammanhanget är att du inte kan ha databasen som du ska komprimera öppen. Du måste alltså stänga den först och då kan du inte komprimera den databasen du utför kommandot ifrån om du inte kallar på ett externt program som: Du kanske kan skriva en vb-komponent som du instansierar från vba, det bör fungera. Även om du gör det som en komponenet kan du inte instansera den i VBA-kod i databasen som ska komprimeras, databasen är fortfarande öppen och kan inte komprimeras. Jag har löst detta genom att ha en separat databas som sköter allt underhåll som komprimering och säkerhetskopiering (om man nu vill ha en sådan funktion).Komprimera DB från Macro
/MiZSv: Komprimera DB från Macro
/JohanSv:Komprimera DB från Macro
Sv: Komprimera DB från Macro
/JohanSv: Komprimera DB från Macro
1. stänger databasen
2. komprimerar den
3. Öppnar den igen
/JohanSv:Komprimera DB från Macro
Sv: Komprimera DB från Macro
/Johan