Slet Excelfil som VBA kører fra
Kan man egentlig slette den Excelfil, der kører VBA-koden der skal slette den? Det lyder mærkeligt, men det er faktisk muligt.
Det kan være mærkeligt at tænke på at du med VBA faktisk kan slette den Excelfil der kører koden. Men det kan du faktisk med nedenstående kode, som jeg selv har brugt. Med denne VBA kode vil du først få vist en messageboks, der siger at nu vil filen blive slettet. Herefter vil Excelfilen lukke og slette sig selv.
Option Explicit Sub Sletfil() MsgBox "Denne fil vil nu lukke og blive slettet" With ThisWorkbook .Saved = True .ChangeFileAccess xlReadOnly Kill .FullName Application.Quit End With End Sub
Jeg skulle blandt andet bruge det i forbindelse med udviklingen af et Excelværktøj. Her tjekkede værktøjet selv om der var kommet en nye version af værktøjet, og hvis der var det blev den nye fil hentet og den gamle nedlagt med denne kode.