Note: The other languages of the website are Google-translated. Back to English

Kako onemogočiti ali ne dovoliti možnosti Shrani in shrani kot v Excelu?

Ko kliknemo funkcijo Shrani ali Shrani kot, se običajno spremenjeni podatki v delovnem zvezku shranijo hkrati. Toda včasih drugi uporabniki, ko preberejo datoteko, ne morejo spreminjati in shraniti vaše datoteke Excel. V tem članku je opisana metoda VBA za onemogočanje možnosti Shrani in shrani kot v Excelu.

Onemogočite možnosti Shrani in shrani kot s kodo VBA


Onemogočite možnosti Shrani in shrani kot s kodo VBA

Zaženete lahko spodnjo kodo VBA, da onemogočite možnosti Shrani in shrani kot v Excelu.

1. V delovnem zvezku morate onemogočiti funkcije Shrani in shrani kot, pritisnite druga + F11 tipke hkrati, da odprete Microsoft Visual Basic za aplikacije okno.

2. V Ljubljani Microsoft Visual Basic za aplikacije okno, dvokliknite Ta delovni zvezek v levo vrstico kopirajte in prilepite spodnji VBA 1 v okno Code in kliknite na Shrani . Oglejte si posnetek zaslona:

VBA 1: onemogočite možnosti Shrani in shrani kot v Excelu

Private Sub Workbook_BeforeClose(Cancel As Boolean)
    ThisWorkbook.Saved = True
End Sub

3. Na odprtju Shrani kot izberite mapo, v katero želite shraniti delovni zvezek, poimenujte delovni zvezek, kot ga potrebujete, in izberite Excelov delovni zvezek z omogočeno makro Iz Shrani kot vrsto spustnega seznama in na koncu kliknite Shrani gumb.

4. Zdaj kopirajte in prilepite spodnji VBA 2 v Ta delovni zvezek okno kode. Oglejte si posnetek zaslona.

VBA 2: onemogočite možnosti Shrani in shrani kot v Excelu

Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
Dim xName As String
xName = "CancelBeforeSave"

If Not Evaluate("=ISREF('" & xName & "'!A1)") Then
    Sheets.Add(after:=Worksheets(Worksheets.count)).Name = xName & ""
    Sheets(xName & "").Move after:=Worksheets(Worksheets.count)
    Sheets(xName & "").Visible = False
    Exit Sub
End If
    Cancel = True
End Sub

5. Kliknite Shrani , da shranite kodo in nato zaprite delovni zvezek.

Delovni zvezek je bil shranjen kot Excelov makro omogočen delovni zvezek z Shrani in Shrani kot funkcije onemogočene.

Opombe: Zdi se, da se spremembe shranijo v trenutni delovni list vsakič, ko spremenite in shranite delovni zvezek. Toda po zaprtju in ponovnem odpiranju delovnega zvezka boste ugotovili, da sprememb ni bilo mogoče shraniti.


Najboljša orodja za pisarniško produktivnost

Kutools za Excel rešuje večino vaših težav in poveča vašo produktivnost za 80%

  • Ponovna uporaba: Hitro vstavite zapletene formule, grafikoni in vse, kar ste že uporabljali; Šifriraj celice z geslom; Ustvari poštni seznam in pošiljanje e-pošte ...
  • Vrstica Super Formula (enostavno urejanje več vrstic besedila in formule); Bralna postavitev (enostavno branje in urejanje velikega števila celic); Prilepite v filtrirani obseg...
  • Združi celice / vrstice / stolpce brez izgube podatkov; Vsebina razdeljenih celic; Združi podvojene vrstice / stolpce... prepreči podvojene celice; Primerjaj obsege...
  • Izberite Duplicate ali Unique Vrstice; Izberite prazne vrstice (vse celice so prazne); Super Find in Fuzzy Find v mnogih delovnih zvezkih; Naključna izbira ...
  • Natančna kopija Več celic brez spreminjanja sklica formule; Samodejno ustvarjanje referenc na več listov; Vstavi oznake, Potrditvena polja in še več ...
  • Izvleček besedila, Dodaj besedilo, Odstrani po položaju, Odstrani presledek; Ustvari in natisni vmesne seštevke strani Pretvarjanje med vsebino celic in komentarji...
  • Super filter (shranite in uporabite sheme filtrov za druge liste); Napredno razvrščanje glede na mesec / teden / dan, pogostost in drugo; Poseben filter s krepko, ležeče ...
  • Združite delovne zvezke in delovne liste; Spoji tabele na podlagi ključnih stolpcev; Razdelite podatke na več listov; Paketna pretvorba xls, xlsx in PDF...
  • Več kot 300 zmogljivih funkcij. Podpira Office / Excel 2007-2021 in 365. Podpira vse jezike. Enostavna uvedba v vašem podjetju ali organizaciji. 30-dnevna brezplačna preizkusna različica vseh funkcij. 60-dnevna garancija vračila denarja.
zavihek kte 201905

Kartica Office prinaša vmesnik z zavihki v Office in poenostavi vaše delo

  • Omogočite urejanje in branje z zavihki v Wordu, Excelu, PowerPointu, Publisher, Access, Visio in Project.
  • Odprite in ustvarite več dokumentov v novih zavihkih istega okna in ne v novih oknih.
  • Poveča vašo produktivnost za 50%in vsak dan zmanjša na stotine klikov miške za vas!
dno pisarniške mize
Komentarji (27)
Ocene še ni. Bodite prvi in ​​ocenite!
Ta komentar je moderator na spletnem mestu minimiziral
to ne deluje. Ne morem shraniti kode, ni več, ko ponovno odprem datoteko. Kako shranim kodo?
Ta komentar je moderator na spletnem mestu minimiziral
Draga majica,
Hvala za vaše vprašanje. Članek je posodobljen tako, da podpira shranjevanje kode v delovni zvezek.
Ta komentar je moderator na spletnem mestu minimiziral
dragi
članek ni posodobljen. ne deluje
Ta komentar je moderator na spletnem mestu minimiziral
Živjo jen,
Članek je bil ponovno posodobljen z reševanjem težave. Prosim, poskusite. Hvala za vaš komentar.
Ta komentar je moderator na spletnem mestu minimiziral
Posodobitev kode doda list, vendar nikoli dejansko ne preveri, ali je na tem listu vrednost TRUE/FALSE. Posodobitev ne popravi ničesar, samo ustvari neuporaben list v delovnem zvezku.

Mislim, da ste pozabili preveriti, ali je na tem listu vrednost TRUE/FALSE.
Ta komentar je moderator na spletnem mestu minimiziral
Kot je objavil TEE, kako shranimo datoteko z makrom? Ko ponovno odprem, ga ni. Zdaj dobivam tudi napako na bitu ThisWorkbookSaved = True.
Ta komentar je moderator na spletnem mestu minimiziral
Dragi Les,
Hvala za vaše vprašanje. Članek je posodobljen tako, da podpira shranjevanje kode v delovni zvezek.
Ta komentar je moderator na spletnem mestu minimiziral
Kot sta objavila TEE in LES, kako shranimo datoteko z makrom?
Ta komentar je moderator na spletnem mestu minimiziral
Hi,
Hvala za vaše vprašanje. Članek je posodobljen tako, da podpira shranjevanje kode v delovni zvezek.
Ta komentar je moderator na spletnem mestu minimiziral
Da bi pomagal tistim, ki berejo ta članek in iščejo pomoč pri zatiranju gumba za shranjevanje, sem mislil, da bi odgovor postavil sem, saj se zdi, da "Crystal" ne odgovarja na vprašanje...


Če postavite delovni zvezek v "Način oblikovanja" in nato pritisnete SHRANI, bi moral delovati.
Ta komentar je moderator na spletnem mestu minimiziral
Dragi Rogue,
Pogrešam bistvo problema. Najlepša hvala za vašo pomoč in delitev.

Lep pozdrav
Ta komentar je moderator na spletnem mestu minimiziral
Vedno znova dobivam napako pri odpravljanju napak
Ta komentar je moderator na spletnem mestu minimiziral
Dober dan,
Katero različico Excela uporabljate?
Ta komentar je moderator na spletnem mestu minimiziral
Pozdravljeni, jaz sem oboževalec te spletne strani ... Preizkušal sem kodo. Deluje brezhibno. Vendar pa onemogoči tudi možnost "Shrani". Ne morem shraniti Excelovega lista. Kar moram je onemogočiti samo funkcijo "Shrani kot" Prebral sem tudi komentarje drugih uporabnikov. ThisWorkbookSaved = True tudi meni ne deluje. Ali lahko prosim pomagate? Najlepša hvala za vse vaše prispevke.
Ta komentar je moderator na spletnem mestu minimiziral
Prosim, ne želim, da nekdo kopira ali shrani mojo excel datoteko, kako lahko odstranim shrani ali shrani kot?
Ta komentar je moderator na spletnem mestu minimiziral
Poskušal sem uporabiti kodo za NE SHRANJEVANJE datoteke. Ampak ni šlo. Shrani datoteko.
Ta komentar je moderator na spletnem mestu minimiziral
Hvala za vaš odgovor. Zelo cenjeno. Želim, da me vodite, kako poslati shranjeno datoteko prijatelju, ki lahko odpre mojo datoteko, vendar jo samo bere ali ureja, vendar datoteke ne more shraniti v nobeno mapo.
1. Imam na primer shranjeno datoteko, ki jo želim poslati na "A". On odpre shranjeno datoteko, vendar po odprtju prebere ali naredi kakršne koli spremembe v moji datoteki, ne more je shraniti na svojem koncu v nobeno mapo.
2. Imam internetno kodo, ki ne dovoljuje shranjevanja. Toda v tem primeru, ko kopiram in prilepim kodo, se datoteka ne shrani. Zato mu ne morem poslati datoteke
3. Kako lahko pošljem datoteko stranki "A" s shranjeno kodo v upanju, da ne bo mogel shraniti datoteke.
Ta komentar je moderator na spletnem mestu minimiziral
Briljantno!   
Ta komentar je moderator na spletnem mestu minimiziral
Za vse tiste, ki so naleteli na napako, ko so to že naredili enkrat, ko poskusijo to narediti znova, se koda ne shrani:

Pojdite na dno datoteke excel, kjer so prikazani listi
Desni klik na liste
Pritisnite Razkrij
Izbrišite list z imenom CancelBeforeSave
Ta komentar je moderator na spletnem mestu minimiziral
Živijo, najlepša hvala, to je točno tisto, kar potrebujem, da preprečim drugim, da bi shranili ali shranili kot datoteko na kateri koli lokaciji, in zame deluje, zahvaljujoč komentarju o "načinu oblikovanja".

Vendar pa moram še vedno imeti možnost občasno urejati datoteko in shraniti spremembe. Ali moram najprej izbrisati kodo VBA, narediti spremembe, shraniti in nato znova dodati kodo VBA, da drugim preprečim shranjevanje? Ali pa obstaja preprostejši način urejanja in shranjevanja, medtem ko koda VBA ostane nedotaknjena?
Ta komentar je moderator na spletnem mestu minimiziral
Živjo Rochelley,
Hvala za vaše mnenje. Koda VBA je bila posodobljena, kot sledi. Moraš:
1. Pritisnite druga + F11 tipke za odpiranje Visual Basic urednik.
2. V Ljubljani Visual Basic urejevalnik, dvakrat kliknite Ta delovni zvezek na levi Projekt in nato kopirajte naslednjo kodo VBA v ThisWorkbook (koda) okno.
3. Shranite kodo in shranite delovni zvezek kot Excelov delovni zvezek z omogočenimi makri.
Opombe:
1) V kodi, "Win10x64Test" pomeni uporabniško ime v vašem operacijskem sistemu. Spremenite ga v svoje uporabniško ime.
2) Ko dodate kodo, lahko uredite delovni zvezek in ga shranite kot običajno. Če pa ta delovni zvezek dobi nekdo drug, možnosti Shrani in Shrani kot ne bosta na voljo.
Private Sub Workbook_BeforeClose(Cancel As Boolean)
'Updated by Extendoffice 20220930
    ThisWorkbook.Saved = True
End Sub
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
Dim xName As String
xName = "Win10x64Test" 'The username in your operating system

If xName <> Environ("username") Then
Cancel = True
End If
End Sub
Ta komentar je moderator na spletnem mestu minimiziral
Pravkar sem odkril, da takoj, ko postavim bližnjico do te datoteke na drugo mesto (kjer bodo drugi dostopali do nje), vse moje zaščite ne delujejo več. List ni zaščiten (kar sem predhodno nastavil), delovni zvezek ni zaščiten (kar sem prav tako predhodno nastavil) in možnost Shrani-Shrani kot je zdaj tam, kot da kode VBA sploh ne bi bilo. Če grem na izvirno datoteko, vse še vedno deluje.

Kaj je na bližnjici, ki odstrani vse zaščite?
Ta komentar je moderator na spletnem mestu minimiziral
Živjo Rochelley,
Koda VBA ne more ugotoviti, v kateri smeri se odpre delovni zvezek. Zato drugim ne more preprečiti spreminjanja datoteke tako, da jo odpre prek bližnjice.
Žal ne morem pomagati pri tej težavi.
Za prvo težavo, ki ste jo omenili zgoraj, potrebujem čas, da vidim, ali jo lahko obvladam.
Ta komentar je moderator na spletnem mestu minimiziral
Možno je, da bo uporabnik, ki prejme datoteko, onemogočil makre in nadzor ne bo deloval. Prosim, pomagajte razumeti.
Ta komentar je moderator na spletnem mestu minimiziral
Živjo Deepak Kachare,
Če ne želite, da drugi uporabniki onemogočijo makre, potem ko prejmejo datoteko, lahko skrijete kodo makra, da je nihče ne more odpreti in videti.
Preverite, ali vam lahko pomaga metoda v naslednjem članku.
Kako zaščititi in skriti Excelove makre
Ta komentar je moderator na spletnem mestu minimiziral
Hvala za vaš odgovor. Mislim, da je povezava napačna. Lahko prosim pomagate s povezavo.
Ta komentar je moderator na spletnem mestu minimiziral
Pozdravljeni DEEPAK KACHARE,
Oprostite za napako. Če želite zaščititi in skriti Excelove makre, morate konfigurirati na naslednji način.
1. Kliknite druga + F11 tipke za odpiranje urejevalnika VBA.
2. V urejevalniku kliknite Orodja > Lastnosti VBAProject.
https://www.extendoffice.com/images/stories/comments/comment-picture-zxm/vba3.png
3. V Ljubljani Lastnosti VBAProject pogovorno okno, pojdite na Zaščita zavihek, preverite Zakleni projekt za ogled polje, vnesite geslo in na koncu kliknite OK.
https://www.extendoffice.com/images/stories/comments/comment-picture-zxm/vba4.png
Od zdaj naprej je za vsakogar (vključno z vami), ki želi odpreti urejevalnik VBA tega delovnega zvezka, potrebno geslo.
Tu še ni objavljenih komentarjev
Pustite vaše komentarje
Objava kot gost
×
Ocenite to objavo:
0   Znaki
Predlagane lokacije

Sledi nam

Copyright © 2009 - www.extendoffice.com. | Vse pravice pridržane. Poganja ga ExtendOffice. | Kazalo
Microsoft in logotip Office sta blagovni znamki ali registrirani blagovni znamki družbe Microsoft Corporation v ZDA in / ali drugih državah.
Zaščiteno s Sectigo SSL