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

Cum să forțezi utilizatorii să salveze ca registru de lucru activat pentru macro?

Când salvați un registru de lucru Excel, acesta va fi salvat ca format de fișier xlsx în mod implicit, iar acest format de fișier va scăpa de codurile macro din registrul de lucru dacă există mai multe coduri. Pentru a păstra codurile, ar trebui să salvați registrul de lucru ca format Excel Macro-Enable Workbook. Cum ai putea forța utilizatorii să salveze ca registru de lucru activat pentru macro?

Forțează utilizatorii să salveze ca registru de lucru activat macro cu cod VBA


săgeată albastru dreapta balon Forțează utilizatorii să salveze ca registru de lucru activat macro cu cod VBA

Pentru a salva în mod implicit registrul de lucru ca registru de lucru activat pentru macro, următorul cod VBA vă poate ajuta, vă rugăm să procedați astfel:

1. Țineți apăsat butonul ALT + F11 tastele pentru a deschide Microsoft Visual Basic pentru aplicații fereastră.

2. Apoi faceți dublu clic Acest manual de lucru în temeiul Proiect VBA pentru a deschide un nou modul gol, apoi copiați și lipiți următorul cod în modul:

Cod VBA: Forțați să salvați registrul de lucru ca registru de lucru activat pentru macro în mod implicit:

Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
'Updateby Extendoffice
Dim xFileName As String
If SaveAsUI <> False Then
    Cancel = True
    xFileName = Application.GetSaveAsFilename(, "Excel Macro-Enabled Workbook (*.xlsm), *.xlsm", , "Save As xlsm file")
    If xFileName <> "False" Then
      Application.EnableEvents = False
      ActiveWorkbook.SaveAs Filename:=xFileName, FileFormat:=xlOpenXMLWorkbookMacroEnabled
      Application.EnableEvents = True
    Else
      MsgBox "Action Cancelled"
      Cancel = True
      Exit Sub
    End If
End If
End Sub

doc force salvare ca xlsm 1

3. Apoi salvați și închideți această fereastră de cod, de acum înainte, când utilizatorii salvează ca acest registru de lucru, va fi salvat ca Cartea de lucru Excel Macro-Enabled formatul implicit, după cum se arată în următoarea captură de ecran:

doc force salvare ca xlsm 2


Cele mai bune instrumente de productivitate Office

Kutools pentru Excel vă rezolvă majoritatea problemelor și vă crește productivitatea cu 80%

  • reutilizarea: Introduceți rapid formule complexe, diagrame și orice ai folosit anterior; Criptați celulele cu parola; Creați o listă de corespondență și trimiteți e-mailuri ...
  • Super Formula Bar (editați cu ușurință mai multe linii de text și formulă); Layout de citire (citiți și editați cu ușurință un număr mare de celule); Lipiți la interval filtrat...
  • Merge celule / rânduri / coloane fără a pierde date; Conținut de celule divizate; Combinați rânduri / coloane duplicate... Prevenirea celulelor duplicate; Comparați gamele...
  • Selectați Duplicat sau Unic Rânduri; Selectați Rânduri goale (toate celulele sunt goale); Super Find și Fuzzy Find în multe cărți de lucru; Selectare aleatorie ...
  • Copie exactă Mai multe celule fără modificarea referinței formulelor; Creați automat referințe la foi multiple; Introduceți gloanțe, Casete de selectare și multe altele ...
  • Extrageți textul, Adăugați text, eliminați după poziție, Eliminați spațiul; Creați și imprimați subtotaluri de paginare; Convertiți conținutul dintre celule și comentarii...
  • Super Filtru (salvați și aplicați scheme de filtrare altor foi); Sortare avansată după lună / săptămână / zi, frecvență și multe altele; Filtru special cu bold, italic ...
  • Combinați cărți de lucru și foi de lucru; Merge Tables pe baza coloanelor cheie; Împărțiți datele în mai multe foi; Conversia în loturi xls, xlsx și PDF...
  • Peste 300 de funcții puternice. Suportă Office / Excel 2007-2021 și 365. Acceptă toate limbile. Implementare ușoară în întreprinderea sau organizația dvs. Funcții complete Probă gratuită de 30 de zile. Garanție de returnare a banilor de 60 de zile.
fila kte 201905

Fila Office aduce interfața cu file în Office și vă face munca mult mai ușoară

  • Activați editarea și citirea cu file în Word, Excel, PowerPoint, Publisher, Access, Visio și Project.
  • Deschideți și creați mai multe documente în filele noi ale aceleiași ferestre, mai degrabă decât în ​​ferestrele noi.
  • Vă crește productivitatea cu 50% și reduce sute de clicuri de mouse pentru dvs. în fiecare zi!
fundul officetab
Comentarii (11)
Încă nu există evaluări. Fii primul care evaluează!
Acest comentariu a fost redus la minimum de moderatorul de pe site
Acest lucru a fost atât de util și a funcționat ca un farmec, mulțumesc :)
Acest comentariu a fost redus la minimum de moderatorul de pe site
M-a scutit de multă durere - mulțumesc mult
Acest comentariu a fost redus la minimum de moderatorul de pe site
Frumos!

M-a scutit de multe batai de cap! :)
Acest comentariu a fost redus la minimum de moderatorul de pe site
Folosesc Excel 2016 pentru Mac și când folosesc acest cod VBA pentru a obține „salvare forțată ca .xlsm” primesc următoarea eroare:

Eroare de rulare „1004”:

Metoda „GetSaveAsFilename” a obiectului „_Application” a eșuat

Orice îndrumare pe care cineva le-ar putea oferi cu privire la această eroare și la modul în care ar putea fi necesar să ajustez codul pentru a funcționa pe versiunea Mac a Excel ar fi foarte apreciată!
Acest comentariu a fost redus la minimum de moderatorul de pe site
formatul fișierului: =52 este mai frumos ca și crearea unui registru de lucru activat pentru macro. fileformat:=51 este un registru de lucru normal.
Acest comentariu a fost redus la minimum de moderatorul de pe site
Continuați să primiți o EROARE 1004.
Folosind Off365 2016 pentru MAC. Ai soluții?
Acest comentariu a fost redus la minimum de moderatorul de pe site
Bună, Jonathan,
Acest cod funcționează bine în Windows Office, dar nu a fost testat în MAC.
Ar trebui să căutați un cod pentru a lucra în MAC.
Mulțumesc!
Acest comentariu a fost redus la minimum de moderatorul de pe site
Orice modalitate de a avea acest VBA într-un fișier șablon
Acest comentariu a fost redus la minimum de moderatorul de pe site
Vreo modalitate de a avea acest VBA într-un fișier care este un adevărat tip de fișier șablon?
Acest comentariu a fost redus la minimum de moderatorul de pe site
Când sunteți gata să creați șablonul, cred că trebuie să utilizați Fereastra Imediată pentru a rula
ActiveWorkbook.SaveAs Filename:="INTRODUCEȚI NUMELE ȘABLONULUI", FileFormat:=xlOpenXMLTemplateMacroEnabled
Acest comentariu a fost redus la minimum de moderatorul de pe site
Codul VBA care obligă utilizatorul să salveze în format de fișier .xlsm funcționează foarte bine pentru mine. Am cautat aceasta solutie de ceva vreme. Multumesc mult pentru ajutor!
Nu există comentarii postate aici încă
Lăsa comentarii
Postare ca invitat
×
Evaluează această postare:
0   Caractere
Locații sugerate

Urmărește-ne

Copyright © 2009 - www.extendoffice.com. | Toate drepturile rezervate. Cu sprijinul ExtendOffice. | Harta site-ului
Microsoft și sigla Office sunt mărci comerciale sau mărci comerciale înregistrate ale Microsoft Corporation în Statele Unite și / sau în alte țări.
Protejat de Sectigo SSL