Preskoči na glavno vsebino
 

Kako shraniti in uporabiti svoje makre VBA v vseh delovnih zvezkih v Excelu?

Avtor: Zhoumandy Zadnja sprememba: 2024-12-02

V nekaterih primerih boste morda morali en makro VBA v prihodnosti uporabiti večkrat. Ali je mogoče shraniti modul VBA, tako da bo na voljo v vseh novih dokumentih in delovnih zvezkih? Odgovor je pritrdilen. V tej vadnici vam bomo predstavili preprost način za dosego vašega cilja.

Posnetek zaslona, ​​ki prikazuje pogovorno okno dodatkov v Excelu

Shranite in uporabite kodo VBA v vseh delovnih zvezkih


Shranite in uporabite kodo VBA v vseh delovnih zvezkih

Na primer, želite uporabiti kodo VBA za pretvori številke v angleške besede in shranite modul VBA v vse delovne zvezke če želite v prihodnosti uporabiti kodo VBA. Prosimo, naredite naslednje.

1. Pritisnite Alt + F11 tipke v Excelu in odpre Microsoft Visual Basic za aplikacije okno.

2. klik Vstavi > Moduli in prilepite naslednji makro v okno modula.

Koda VBA: Pretvorite številke v besede

Function NumberstoWords(ByVal MyNumber)
'Update by Extendoffice
Dim xStr As String
Dim xFNum As Integer
Dim xStrPoint
Dim xStrNumber
Dim xPoint As String
Dim xNumber As String
Dim xP() As Variant
Dim xDP
Dim xCnt As Integer
Dim xResult, xT As String
Dim xLen As Integer
On Error Resume Next
xP = Array("", "Thousand ", "Million ", "Billion ", "Trillion ", " ", " ", " ", " ")
xNumber = Trim(Str(MyNumber))
xDP = InStr(xNumber, ".")
xPoint = ""
xStrNumber = ""
If xDP > 0 Then
xPoint = " point "
xStr = Mid(xNumber, xDP + 1)
xStrPoint = Left(xStr, Len(xNumber) - xDP)
For xFNum = 1 To Len(xStrPoint)
xStr = Mid(xStrPoint, xFNum, 1)
xPoint = xPoint & GetDigits(xStr) & " "
Next xFNum
xNumber = Trim(Left(xNumber, xDP - 1))
End If
xCnt = 0
xResult = ""
xT = ""
xLen = 0
xLen = Int(Len(Str(xNumber)) / 3)
If (Len(Str(xNumber)) Mod 3) = 0 Then xLen = xLen - 1
Do While xNumber <> ""
If xLen = xCnt Then
xT = GetHundredsDigits(Right(xNumber, 3), False)
Else
If xCnt = 0 Then
xT = GetHundredsDigits(Right(xNumber, 3), True)
Else
xT = GetHundredsDigits(Right(xNumber, 3), False)
End If
End If
If xT <> "" Then
xResult = xT & xP(xCnt) & xResult
End If
If Len(xNumber) > 3 Then
xNumber = Left(xNumber, Len(xNumber) - 3)
Else
xNumber = ""
End If
xCnt = xCnt + 1
Loop
xResult = xResult & xPoint
NumberstoWords = xResult
End Function
Function GetHundredsDigits(xHDgt, xB As Boolean)
Dim xRStr As String
Dim xStrNum As String
Dim xStr As String
Dim xI As Integer
Dim xBB As Boolean
xStrNum = xHDgt
xRStr = ""
On Error Resume Next
xBB = True
If Val(xStrNum) = 0 Then Exit Function
xStrNum = Right("000" & xStrNum, 3)
xStr = Mid(xStrNum, 1, 1)
If xStr <> "0" Then
xRStr = GetDigits(Mid(xStrNum, 1, 1)) & "Hundred "
Else
If xB Then
xRStr = "and "
xBB = False
Else
xRStr = " "
xBB = False
End If
End If
If Mid(xStrNum, 2, 2) <> "00" Then
xRStr = xRStr & GetTenDigits(Mid(xStrNum, 2, 2), xBB)
End If
GetHundredsDigits = xRStr
End Function
Function GetTenDigits(xTDgt, xB As Boolean)
Dim xStr As String
Dim xI As Integer
Dim xArr_1() As Variant
Dim xArr_2() As Variant
Dim xT As Boolean
xArr_1 = Array("Ten ", "Eleven ", "Twelve ", "Thirteen ", "Fourteen ", "Fifteen ", "Sixteen ", "Seventeen ", "Eighteen ", "Nineteen ")
xArr_2 = Array("", "", "Twenty ", "Thirty ", "Forty ", "Fifty ", "Sixty ", "Seventy ", "Eighty ", "Ninety ")
xStr = ""
xT = True
On Error Resume Next
If Val(Left(xTDgt, 1)) = 1 Then
xI = Val(Right(xTDgt, 1))
If xB Then xStr = "and "
xStr = xStr & xArr_1(xI)
Else
xI = Val(Left(xTDgt, 1))
If Val(Left(xTDgt, 1)) > 1 Then
If xB Then xStr = "and "
xStr = xStr & xArr_2(Val(Left(xTDgt, 1)))
xT = False
End If
If xStr = "" Then
If xB Then
xStr = "and "
End If
End If
If Right(xTDgt, 1) <> "0" Then
xStr = xStr & GetDigits(Right(xTDgt, 1))
End If
End If
GetTenDigits = xStr
End Function
Function GetDigits(xDgt)
Dim xStr As String
Dim xArr_1() As Variant
xArr_1 = Array("Zero ", "One ", "Two ", "Three ", "Four ", "Five ", "Six ", "Seven ", "Eight ", "Nine ")
xStr = ""
On Error Resume Next
xStr = xArr_1(Val(xDgt))
GetDigits = xStr
End Function

3. Kliknite Prihranek ikono v zgornjem levem kotu traku ali kliknite Ctrl + S da odprete Shrani kot okno.
Posnetek zaslona, ​​ki prikazuje možnost Shrani v oknu VBA

4. V Ljubljani Shrani kot okno, vnesite ime delovnega zvezka v Ime datoteke škatla. In izberite Excelov dodatek (*.xlam) možnost v Shrani kot vrsto spustni seznam.
Posnetek zaslona, ​​ki prikazuje pogovorno okno Shrani kot z izbiro Excelovega dodatka (*.xlam) kot vrste shranjevanja

5. Nato kliknite na Prihranek gumb za shranjevanje delovnega zvezka s kodo VBA kot Dodatek za Excel.
Posnetek zaslona, ​​ki prikazuje delovni zvezek, shranjen kot Excelov dodatek

6. Nazaj na Excel, zaprite prazen delovni zvezek, ki je bil shranjen kot Excelov dodatek.

7. Odprite nov delovni zvezek s podatki, ki jih je treba pretvoriti. Vnesite formulo = Število besed (A2) v celici B2. The #name? vrnjena bo vrednost napake, ker koda VBA še ni bila uporabljena v vseh delovnih zvezkih.
Posnetek zaslona #NAME? napako pred uporabo shranjenega makra VBA

8. Pojdi Razvojni jeziček, kliknite Excelovi dodatki v Dodatki skupina.
Posnetek zaslona, ​​ki prikazuje možnost dodatkov pod zavihkom razvijalec v Excelu

9. Dodatek odpre se pogovorno okno. Kliknite Brskanje gumb.
Posnetek zaslona pogovornega okna dodatkov v Excelu

10. Izberite dodatek, ki ste ga pravkar shranili, nato kliknite OK gumb.
Posnetek zaslona, ​​ki prikazuje izbiro datoteke dodatka po meri v Excelu

11. Običaj Dodatek za pretvorbo števil v besede je zdaj naložen in omogočen. Kliknite na OK za dokončanje nastavitve.
Posnetek zaslona, ​​ki prikazuje dodatek po meri v pogovornem oknu Dodatki v Excelu

12. Zdaj, ko vnesete formulo = Število besed (A2) v celici B2 in pritisnite Vnesite ključ, bodo vrnjene ustrezne angleške besede. Povlecite ročico za samodejno izpolnjevanje navzdol, da dobite vse rezultate.
Posnetek zaslona, ​​ki prikazuje končni rezultat pretvorjenih števil v besede

Opombe:

Če morate zagnati kodo ročno, ga ni mogoče najti z zgornjimi koraki. prosim ne skrbi. obstajajo dva načina za zagon kode.

  1. Kodo lahko dodate v Hitra orodna vrstica in zaženite kodo vsakič, ko v orodni vrstici kliknete gumb kode.
    Posnetek zaslona, ​​ki prikazuje, kako dodate makro VBA v orodno vrstico za hitri dostop
  2. Lahko tudi neposredno pritisnete Alt + F11 da odprete polje s kodo, poiščite kodo in pritisnite F5 teči.

Druge operacije (članki)

Koda VBA za seznam vseh dodatkov v Excelu
V Excelu lahko dodate ali vstavite nekaj dodatkov za boljše obravnavanje podatkov. Kot vemo, lahko odpremo okno Možnosti, da si ogledamo vse dodane datoteke, ampak ali obstaja kakršen koli seznam vseh dodanih datotek na listu? Zdaj v tej vadnici ponuja kodo VBA za naštevanje vseh dodanih datotek v Excelu.

Kako zagnati makro VBA, ko odprete ali zaprete delovni zvezek?
V tem članku vam bom povedal, kako zagnati kodo VBA med vsakim odpiranjem ali zapiranjem delovnega zvezka.

Kako zaščititi/zakleniti kodo VBA v Excelu?
Tako kot lahko uporabite geslo za zaščito delovnih zvezkov in delovnih listov, lahko nastavite tudi geslo za zaščito makrov v Excelu.

Kako uporabiti časovni zamik po zagonu makra VBA v Excelu?
V nekaterih primerih boste morda morali zakasniti časovnik za sprožitev makra VBA v Excelu. Na primer, ko kliknete za zagon določenega makra, začne veljati po 10 sekundah. Ta članek vam bo pokazal način, kako to doseči.

Najboljša pisarniška orodja za produktivnost

🤖 Kutools AI Aide: Revolucionirajte analizo podatkov na podlagi: Inteligentna izvedba   |  Ustvari kodo  |  Ustvarite formule po meri  |  Analizirajte podatke in ustvarite grafikone  |  Prikličite funkcije Kutools...
Priljubljene funkcije: Poiščite, označite ali identificirajte dvojnike   |  Izbriši prazne vrstice   |  Združite stolpce ali celice brez izgube podatkov   |   Krog brez formule ...
Super iskanje: Več kriterijev VLookup    Multiple Value VLookup  |   VLookup na več listih   |   Nejasno iskanje ....
Napredni spustni seznam: Hitro ustvarite spustni seznam   |  Odvisni spustni seznam   |  Večkrat izberite spustni seznam ....
Upravitelj stolpcev: Dodajte določeno število stolpcev  |  Premakni stolpce  |  Preklop stanja vidnosti skritih stolpcev  |  Primerjaj obsege in stolpce ...
Predstavljene funkcije: Mrežni fokus   |  Pogled oblikovanja   |   Velika vrstica formule    Upravitelj delovnih zvezkov in listov   |  Knjižnica virov (Samodejno besedilo)   |  Izbirnik datuma   |  Združite delovne liste   |  Šifriranje/dešifriranje celic    Pošljite e-pošto po seznamu   |  Super filter   |   Poseben filter (filter krepko/ležeče/prečrtano ...) ...
15 najboljših kompletov orodij12 Besedilo Orodja (dodajanje besedila, Odstrani znake,...)   |   50 + Graf Vrste (Gantt Chart,...)   |   40+ Praktično Formule (Izračunajte starost glede na rojstni dan,...)   |   19 vstavljanje Orodja (Vstavite kodo QR, Vstavi sliko s poti,...)   |   12 Pretvorba Orodja (Številke v besede, Pretvorba valut,...)   |   7 Spoji in razdeli Orodja (Napredne kombinirane vrstice, Razdeljene celice,...)   |   ... in več

Napolnite svoje Excelove spretnosti s Kutools za Excel in izkusite učinkovitost kot še nikoli prej. Kutools za Excel ponuja več kot 300 naprednih funkcij za povečanje produktivnosti in prihranek časa.  Kliknite tukaj, če želite pridobiti funkcijo, ki jo najbolj potrebujete...


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!