Lang L: none (table-of-contents)
See VBA õpetus hõlmab faili salvestamist, kasutades VBA käske Salvesta ja Salvesta nimega.
Salvesta töövihik - VBA
VBA salvestamise käsk salvestab Exceli faili sarnaselt salvestusikooni klõpsamisega või salvestamise otsetee (CTRL + S) abil.
Salvestage määratud töövihik
Töövihiku salvestamiseks viidake töövihiku objektile ja kasutage käsku Salvesta.
1 | Töövihikud ("savefile.xlsm"). Salvesta |
Salvestage aktiivne töövihik
Märkus. See on praegune aktiivne töövihik VBA -koodiga, mis erineb käesolevast töövihikust, mis sisaldab töötavat koodi.
Salvestage töövihik, kuhu kood on salvestatud
Salvestage kõik avatud töövihikud
See vaatab läbi kõik avatud töövihikud, salvestades need.
12345 | Dim wb töövihikunaIga wb jaoks rakenduses. Töövihikudwb. SalvestaJärgmine wb |
Salvestage kõik avatud töövihikud, mida ei avatud ReadOnly
Märkus. Töövihiku avamine režiimis ReadOnly takistab faili salvestamist.
Faili salvestamiseks peate kasutama nuppu Salvesta nimega ja salvestama faili teise nimega.
1234567 | Dim wb töövihikunaIga wb jaoks rakenduses. TöövihikudKui mitte, siis ainult lugemisekswb. SalvestaLõpetage, kuiJärgmine wb |
Salvestage muutujaga määratud töövihik
See salvestab töövihiku, mis oli määratud töövihiku objekti muutujale.
1234 | Dim wb töövihikunaset wb = töövihikud ("savefile.xlsm")wb.save |
Salvestage stringi muutujaga määratletud töövihik
See salvestab töövihiku, mille nimi salvestati stringimuutujale.
1234 | Dim wbstring stringinawbstring = "savefile.xlsm"töövihikud (wbstring) .save |
Salvestage töövihik, mis on määratud selle avamise järjekorras.
Märkus. Esimesel avatud töövihikul oleks 1, teisel 2 jne.
Töövihiku salvestamine lahtri väärtuse alusel
See salvestab töövihiku, mille nimi on lahtri väärtuses.
1234 | Dim wbstring stringinawbstring = activeworkbook.sheets ("sheet1"). range ("wb_save"). väärtustöövihikud (wbstring) .save |
Salvesta kui - VBA
Käsk VBA Salvesta nimega salvestab Exceli faili uue failina, sarnaselt ikooni Salvesta nimega klõpsamisega või otsetee salvestamisega (Alt> F> A).
Eespool tuvastasime kõik viisid, kuidas määrata, millist töövihikut salvestada. Saate kasutada samu meetodeid töövihikute tuvastamiseks, kui kasutate funktsiooni Salvesta nimega.
Salvesta nimega käitub sarnaselt salvestamisega, välja arvatud see, et peate määrama ka uue faili nime.
Tegelikult on Salvesta nimega määratlemiseks palju potentsiaalseid muutujaid:
SaveAs süntaks:
123 | töövihiku objekt .SaveAs (FileName, FileFormat, Password, WriteResPassword, _ReadOnlyRecommended, CreateBackup, AccessMode, ConflictResolution, _AddToMru, TextCodepage, TextVisualLayout, Local) |
Allpool on toodud kõigi SaveAs argumentide täielik kirjeldus. Praegu keskendume kõige tavalisematele näidetele.
Märkus. Neid argumente saab sisestada sulgudega stringina või määratletud muutujatena.
Näited salvestamiseks süntaksina:
Töövihik Salvesta nimega - sama kataloog
1 | ActiveWorkbook.SaveAs Failinimi: = "uus" |
või
1 | ActiveWorkbook.SaveAs "new" |
või
1234 | Dim wbstring stringinawbstring = "uus"ActiveWorkbook.SaveAs Failinimi: = wbstring |
Töövihik Salvesta nimega - uus kataloog
1 | ActiveWorkbook.SaveAs Failinimi: = "C: \ uus" |
või
1234 | Dim wbstring stringinawbstring = "C: \ uus"ActiveWorkbook.SaveAs Failinimi: = wbstring = |
Töövihik Salvesta nimega - uus kataloog, määrake faililaiend
1 | ActiveWorkbook.SaveAs Failinimi: = "C: \ new.xlsx" |
või
1234 | Dim wbstring stringinawbstring = "C: \ new.xlsx"ActiveWorkbook.SaveAs Failinimi: = wbstring |
Töövihik Salvesta nimega - uus kataloog, määrake faililaiend - alt meetod
Failivormingu saate määrata ka oma argumendis.
1234 | .xlsx = 51 '(52 Maci jaoks).xlsm = 52 '(Maci jaoks 53).xlsb = 50 '(Maci jaoks 51).xls = 56 '(Maci jaoks 57) |
1 | ActiveWorkbook.SaveAs Failinimi: = "C: \ new", FileFormat: = 51 |
Töövihik Salvesta nimega - lisage faili avamiseks parool
1 | ActiveWorkbook.SaveAs Failinimi: = "C: \ new.xlsx", Parool: = "parool" |
Töövihik Salvesta nimega - lisage kirjutamisõiguste jaoks parool
Kui õiget parooli ei esitata, avaneb töövihik kirjutuskaitstuna
1 | ActiveWorkbook.SaveAs Failinimi: = "C: \ new.xlsx", WriteRes: = "parool" |
Töövihik Salvesta nimega - soovitatav lugeda
TRUE, et kuvada sõnumikast, soovitades faili avada ainult kirjutuskaitstuna.
1 | ActiveWorkbook.SaveAs Failinimi: = "C: \ new.xlsx", ReadOnlyRecommended: = TRUE |
Muud Salvesta näidetena
Loo dialoogiboks Salvesta nimega
See loob dialoogiboksi Salvesta nimega, paludes kasutajal fail salvestada.
Pidage meeles, et see lihtne kood ei pruugi kõigil juhtudel sobida.
1 | Application.GetSaveAsFilename |
Loo dialoogiboks Salvesta kui vaikimisi failinimi
1 | Application.GetSaveAsFilename InitialFilename: = "test.xlsx" |
Loo dialoogiboks Salvesta kui vaikimisi failinimi
1 | Application.GetSaveAsFilename InitialFilename: = "test.xlsx" |
Loo ja salvesta uus töövihik
See loob uue töövihiku ja salvestab selle kohe.
123456 | Dim wb TöövihikunaMäära wb = Töövihikud. LisaApplication.DisplayAlerts = Valewb.SaveAs Failinimi: = ”c: \ Test1.xlsx”Application.DisplayAlerts = Tõsi |
Keela Salvestusmärguanded
Kui töötate VBA -s säästmisega, võite kohata erinevaid salvestushoiatusi või viipasid. Hoiatuste keelamiseks lisage see koodirida:
1 | Application.DisplayAlerts = Vale |
ja märguannete uuesti lubamiseks:
1 | Application.DisplayAlerts = Tõsi |