Upit "Kako potisnuti spremanje promjena" prilikom zatvaranja radne knjige u programu Excel

Primjenjuje se na
Excel 2007

Sažetak

U programu Microsoft Excel možete stvoriti makronaredbu u programskom jeziku Microsoft Visual Basic for Applications (VBA) koja sprječava upit o spremanju promjena prilikom zatvaranja radne knjige. To se može napraviti tako da odredite stanje svojstva radne knjige kao spremljeno ili da isključite sva upozorenja za radnu knjigu.

Dodatne informacije

NAPOMENA: Microsoft daje primjere programiranja samo za ilustraciju, bez jamstva, bilo izričitog ili prešutnog. To uključuje, bez ograničenja, implicitna jamstva utrživosti ili prikladnosti za određenu svrhu. U članku se podrazumijeva da ste upoznati s programskim jezikom koji se pokazuje te s alatima koji se koriste za stvaranje i ispravljanje pogrešaka procedura. Microsoftovi inženjeri za podršku mogu vam objasniti funkcionalnost određenog postupka. Međutim, oni neće mijenjati te primjere radi pružanja dodatne funkcionalnosti ili konstruirati postupke koji zadovoljavaju vaše specifične zahtjeve. 

Da biste se pripremili za implementaciju nekog od primjera u nastavku, najprije izvedite sljedeće korake:

  1. Pokrenite Excel i otvorite novu radnu knjigu.

  2. Da biste pokrenuli Visual Basic editor, pritisnite ALT+F11.

  3. Na izborniku Umetanje kliknite Moduli.

  4. Upišite ogledni kod makronaredbe na list modula.

  5. Pritisnite ALT+F11 da biste se vratili u Excel.

  6. U programu Microsoft Office Excel 2003 i starijim verzijama programa Excel na izborniku Alati odaberite Makronaredba, a zatim kliknite Makronaredbe.

    U programu Microsoft Office Excel 2007 kliknite Makronaredbe u grupi Kod na kartici Programiranje .

    Ako kartica Programiranje nije dostupna, učinite sljedeće:

        a. Kliknite gumb Microsoft Office , a zatim Mogućnosti programa Excel.

        b. U kategoriji Popularno u odjeljku Glavne postavke u radu s programom Excel klikom odaberite Pokaži
            Potvrdni okvir kartice Razvoj u potvrdnom okviru Vrpca
    , a zatim kliknite U redu.

  7. Odaberite željenu makronaredbu, a zatim kliknite Pokreni.

Svojstvo Spremljeno vraća vrijednost False ako su u radnu knjigu izvršene promjene nakon zadnjeg spremanja.

Pomoću rezerviranog naziva Auto_Close potprograma možete odrediti makronaredbu koja se pokreće kad god se radna knjiga zatvori. Na taj način možete kontrolirati kako se rukuje dokumentom kada korisnik zatvori dokumente u programu Excel.
 

Prvi primjer: zatvaranje radne knjige bez spremanja promjena

Da biste prisilno zatvorili radnu knjigu bez spremanja promjena, upišite sljedeći kod u modul Visual Basic te radne knjige:
 

Sub Auto_Close()

ThisWorkbook.Saved = True

End Sub

Kada je svojstvo Spremljeno postavljeno na True, Excel odgovara kao da je radna knjiga već spremljena i da od tog zadnjeg spremanja nije došlo do promjena.

Svojstvo DisplayAlerts programa može se koristiti u istu svrhu. Sljedeća makronaredba, primjerice, isključuje DisplayAlerts , zatvara aktivnu radnu knjigu bez spremanja promjena, a zatim ponovno uključuje DisplayAlerts .
 

Sub CloseBook()

Application.DisplayAlerts = False

ActiveWorkbook.Close

Application.DisplayAlerts = True

End Sub

Možete koristiti i argument SaveChanges metode zatvaranja .

Sljedeća makronaredba zatvara radnu knjigu bez spremanja promjena:
 

Sub CloseBook2()

ActiveWorkbook.Close savechanges:=False

End Sub

Drugi primjer: zatvaranje radne knjige i spremanje promjena

Da biste u radnu knjigu prisilili spremanje promjena, upišite sljedeći kod u modul Visual Basic te radne knjige:
 

Sub Auto_Close()

Ako je ThisWorkbook.Saved = False, onda

Ova radna knjiga.Spremi kraj ako

End Sub

Ova podprocedura provjerava je li svojstvo datoteke Spremljeno postavljeno na False. Ako jesu, radna knjiga je promijenjena od zadnjeg spremanja i te su promjene spremljene.