För det första så kan man ju fundera på om filen behöver vara så stor. Det finns olika sätt att minska ner den; man kan lägga varje flik i en egen fil, man kan dela upp indata och beräkningar i varsin fil, och man kan också köra något som kallas Code Cleaner, som kan minska filstorleken dramatiskt.
För det andra är jag inte säker på att din variant skulle hjälpa. Om du till exempel säger att det ska sparas efter 10 sekunders inaktivitet, och någon vill använda datorn efter 11 sekunder, så blir de definitivt irriterade...
Men hur som helst - att få reda på datorns aktivitet går att ta reda på i t.ex. www.codeproject.com/kb/system/cpuusageByDudiAvramov.aspx, och du kan då testa detta, säg var 5:e sekund med hjälp av Application.OnTime.
Det är inte speciellt lätt dock, och frågan är om det inte är lättare att göra filen snabbare att spara.