VBA mentési fájl - 20 egyszerű példa - VBA kódpéldák

Ez a VBA bemutató ismerteti a fájl mentésének módját a VBA Mentés és mentés másként parancsaival.

Munkafüzet mentése - VBA

A VBA Mentés parancs hasonlóan menti az Excel fájlt, mint a Mentés ikonra kattintva vagy a Mentés parancsikon használatával (CTRL + S).

Mentse el a megadott munkafüzetet

A munkafüzet mentéséhez hivatkozzon a munkafüzet objektumára, és használja a Mentés parancsot.

1 Munkafüzetek ("savefile.xlsm"). Mentés

Mentse az aktív munkafüzetet

Megjegyzés: Ez az aktuális aktív munkafüzet a VBA -kódból, amely eltér a futó kódot tartalmazó ThisWorkbook -tól.

1 ActiveWorkbook.Save

Mentse el a munkafüzetet, ahol a kód tárolódik

1 ThisWorkbook.save

Mentse az összes nyitott munkafüzetet

Ez végigmegy az összes nyitott munkafüzeten, és mindegyiket elmenti.

12345 Dim wb munkafüzetkéntMinden wb -ben az alkalmazásban. Munkafüzetekwb. MentésKövetkező wb

Mentse el az összes nyitott munkafüzetet, amelyet nem nyitott meg ReadOnly

Megjegyzés: a munkafüzet ReadOnly módban történő megnyitása megakadályozza a fájl mentését.
A fájl mentéséhez a Mentés másként parancsot kell használnia, és más néven kell mentenie a fájlt.

1234567 Dim wb munkafüzetkéntMinden wb -ben az alkalmazásban. MunkafüzetekHa nem wb ReadOnly akkorwb. MentésVége, haKövetkező wb

Mentse el a változó által meghatározott munkafüzetet

Ez elmenti a munkafüzet objektumváltozóhoz rendelt munkafüzetet.

1234 Dim wb munkafüzetkéntset wb = munkafüzetek ("savefile.xlsm")wb.save

Mentse el a karakterlánc -változóval meghatározott munkafüzetet

Ezzel elmentheti a munkafüzetet, amelynek nevét egy string változóba mentette.

1234 Dim wbstring karakterlánckéntwbstring = "savefile.xlsm"munkafüzetek (wbstring) .mentés

Mentse a megnyitott sorrendben meghatározott munkafüzetet.

Megjegyzés: Az első megnyitott munkafüzet 1, a második 2 stb.

1 munkafüzetek (1) .mentés

Mentse el a munkafüzetet cellaérték alapján

Ezzel elmenti a munkafüzetet, amelynek neve megtalálható a cellaértékben.

1234 Dim wbstring karakterlánckéntwbstring = activeworkbook.sheets ("sheet1"). range ("wb_save"). értékmunkafüzetek (wbstring) .mentés

Mentés másként - VBA

A VBA Mentés másként parancs új fájlként menti az Excel fájlt, hasonlóan a Mentés másként ikonra vagy a Mentés másként parancsikonhoz (Alt> F> A).
Fent azonosítottuk a menteni kívánt munkafüzet megadásának minden módját. Pontosan ugyanezekkel a módszerekkel azonosíthatja a munkafüzeteket a Mentés másként használatakor.

A Mentés másként a Mentéshez hasonlóan működik, kivéve, ha meg kell adnia az új fájl nevét is.
Valójában a Mentés másként számos lehetséges változót definiálhat:

SaveAs szintaxisa:

123 munkafüzet objektum .SaveAs (Fájlnév, Fájlformátum, Jelszó, WriteResPassword, _ReadOnlyRecommended, CreateBackup, AccessMode, ConflictResolution, _AddToMru, TextCodepage, TextVisualLayout, Local)

Az összes SaveAs argumentum teljes leírása az alábbiakban található. Most a leggyakoribb példákra összpontosítunk.
Megjegyzés: Ezeket az argumentumokat zárójelben szereplő karakterláncként vagy definiált változóként lehet megadni.

Példák mentésre szintaxisként:

Munkafüzet Mentés másként - Ugyanaz a könyvtár

1 ActiveWorkbook.SaveAs Fájlnév: = "new"

vagy

1 ActiveWorkbook.SaveAs "new"

vagy

1234 Dim wbstring karakterlánckéntwbstring = "új"ActiveWorkbook.SaveAs Fájlnév: = wbstring

Munkafüzet Mentés másként - Új könyvtár

1 ActiveWorkbook.SaveAs Fájlnév: = "C: \ new"

vagy

1234 Dim wbstring karakterlánckéntwbstring = "C: \ új"ActiveWorkbook.SaveAs Fájlnév: = wbstring =

Munkafüzet Mentés másként - Új könyvtár, fájlkiterjesztés megadása

1 ActiveWorkbook.SaveAs Fájlnév: = "C: \ new.xlsx"

vagy

1234 Dim wbstring karakterlánckéntwbstring = "C: \ new.xlsx"ActiveWorkbook.SaveAs Fájlnév: = wbstring

Munkafüzet Mentés másként - Új könyvtár, Fájlbővítmény megadása - Alt módszer

A fájlformátumot saját argumentumában is megadhatja.

1234 .xlsx = 51 '(52 Mac esetén).xlsm = 52 '(53 Mac esetén).xlsb = 50 '(51 Mac esetén).xls = 56 '(57 Mac esetén)
1 ActiveWorkbook.SaveAs Fájlnév: = "C: \ new", FileFormat: = 51

Munkafüzet Mentés másként - Jelszó hozzáadása a fájl megnyitásához

1 ActiveWorkbook.SaveAs Fájlnév: = "C: \ new.xlsx", Jelszó: = "jelszó"

Munkafüzet Mentés másként - Jelszó hozzáadása írási jogosultságokhoz

Ha nem adja meg a helyes jelszót, a munkafüzet csak olvashatóként nyílik meg

1 ActiveWorkbook.SaveAs Fájlnév: = "C: \ new.xlsx", WriteRes: = "jelszó"

A munkafüzet mentése másként - csak olvasható

IGAZ üzenetüzenet megjelenítéséhez, amely azt javasolja, hogy a fájl csak olvasható legyen.

1 ActiveWorkbook.SaveAs Fájlnév: = "C: \ new.xlsx", ReadOnlyRecommended: = TRUE

Egyéb Mentés másként

Mentés másként párbeszédpanel létrehozása

Ez létrehozza a Mentés másként párbeszédpanelt, és felszólítja a felhasználót a fájl mentésére.
Ne feledje, hogy ez az egyszerű kód nem minden esetben megfelelő.

1 Application.GetSaveAsFilename

Mentés másként párbeszédpanel létrehozása alapértelmezett fájlnévvel

1 Application.GetSaveAsFilename InitialFilename: = "teszt.xlsx"

Mentés másként párbeszédpanel létrehozása alapértelmezett fájlnévvel

1 Application.GetSaveAsFilename InitialFilename: = "teszt.xlsx"

Új munkafüzet létrehozása és mentése

Ezzel új munkafüzetet hoz létre, és azonnal elmenti.

123456 Dim wb Mint munkafüzetÁllítsa be a wb = Workbooks.AddApplication.DisplayAlerts = Hamiswb.SaveAs Fájlnév: = ”c: \ Test1.xlsx”Application.DisplayAlerts = Igaz

A figyelmeztetések mentésének letiltása

Miközben a mentéssel dolgozik a VBA -ban, különféle mentési figyelmeztetésekkel vagy felszólításokkal találkozhat. A figyelmeztetések letiltásához adja hozzá ezt a kódsort:

1 Application.DisplayAlerts = Hamis

és a riasztások újbóli engedélyezéséhez:

1 Application.DisplayAlerts = Igaz
wave wave wave wave wave