Fyrir Excel 2007 notuðu VBA forritarar CommandBar hlutinn til að búa til sérsniðnar valmyndir, sérsniðnar tækjastikur og sérsniðnar flýtileiðir (hægrismella) valmyndir. Frá og með Excel 2007 er CommandBar hluturinn í frekar skrýtinni stöðu. Ef þú skrifar kóða til að sérsníða valmynd eða tækjastiku, grípur Excel þann kóða og hunsar margar skipanir þínar.
Í stað þess að sýna úthugsaða viðmótsaukninguna þína, setur Excel 2007 (eins og síðari útgáfur) einfaldlega sérsniðnu valmyndirnar þínar og tækjastikur í gríðarlegan borðaflipa sem heitir Add-Ins.
Sérstillingar á valmyndum og tækjastikum lenda í hópnum Viðbætur → Valmyndarskipanir eða Viðbætur → Sérsniðnar tækjastikur. En að sérsníða flýtileiðavalmyndir (sem notar líka CommandBar hlutinn) virkar samt eins og það hefur alltaf gert - jæja, svona.
Kjarni málsins? CommandBar hluturinn er ekki mjög gagnlegur lengur, en það er enn eina leiðin til að sérsníða flýtileiðavalmyndir.
Nýjum hlut bætt við flýtivalmynd klefi
Hér að neðan finnurðu sýnishornskóða sem bætir nýjum hlut við flýtileiðarvalmyndina sem birtist þegar þú hægrismellir á reit. Þú ættir að geta lagað þessi dæmi að þínum þörfum.
Þú getur bætt tólið Change Case aðeins með því að gera það aðgengilegt úr flýtivalmyndinni Cell.
AddToShortcut aðferðin bætir nýjum valmyndaratriði við flýtivalmynd klefi. Þú getur lagað það þannig að það vísar á eigin fjölvi með því að breyta Caption og OnAction eiginleikum hlutarins sem heitir NewControl.
Undir AddToShortCut()
Dim Bar Sem CommandBar
Dimma NewControl As CommandBarButton
DeleteFromShortcut
Set Bar = Application.CommandBars(“Cell”)
Setja NewControl = Bar.Controls.Add _
(Type:=msoControlButton, ID:=1, _
tímabundið:=Satt)
Með NewControl
.Caption = „&Breyta hástöfum“
.OnAction = „ChangeCase“
.Style = msoButtonIconAndCaption
Enda með
End Sub
Þegar þú breytir flýtileiðarvalmynd er sú breyting áfram í gildi þar til þú endurræsir Excel. Með öðrum orðum, breyttar flýtivalmyndir endurstilla sig ekki þegar þú lokar vinnubókinni sem inniheldur VBA kóðann. Þess vegna, ef þú skrifar kóða til að breyta flýtileiðarvalmynd, skrifar þú næstum alltaf kóða til að snúa við áhrifum breytingarinnar.
Aðferðin DeleteFromShortcut fjarlægir nýja valmyndaratriðið úr flýtivalmynd klefi:
Undir DeleteFromShortcut()
Á Villa Resume Next
Application.CommandBars(„Cell“).Stýringar _
("&Breyta máli"). Eyða
End Sub
Þetta sýnir hvernig nýja valmyndaratriðið birtist eftir að þú hægrismellt á reit.
Flýtileiðarvalmynd klefi sem sýnir sérsniðið valmyndaratriði: Breyta hástöfum.
Fyrsta raunverulega skipunin eftir yfirlýsingu um nokkrar breytur kallar á DeleteFromShortcut málsmeðferðina. Þessi yfirlýsing tryggir að aðeins einn Breyta tilfelli valmyndaratriði birtist á flýtileiðarvalmyndinni Cell. Prófaðu að skrifa athugasemdir út úr þeirri línu (settu fráfall í byrjun línunnar) og keyrðu málsmeðferðina nokkrum sinnum - en ekki láta þér líða vel!
Hægrismelltu á reit og þú getur séð mörg tilvik af valmyndaratriðinu Breyta tilfelli. Losaðu þig við allar færslur með því að keyra DeleteFromShortcut mörgum sinnum (einu sinni fyrir hvert auka valmyndaratriði).
Að lokum þarftu leið til að bæta við flýtileiðarvalmyndaratriðinu þegar vinnubókin er opnuð og til að eyða valmyndaratriðinu þegar vinnubókinni er lokað. Að gera þetta er auðvelt. Bættu bara þessum tveimur atburðarferlum við ThisWorkbook kóðaeininguna:
Private Sub Workbook_Open()
Hringdu í AddToShortCut
End Sub
Private Sub Workbook_BeforeClose(Hætta við sem Boolean)
Hringdu í DeleteFromShortcut
End Sub
Vinnubók_Opin aðferðin er keyrð þegar vinnubókin er opnuð og Vinnubók_BeforeClose aðferðin er keyrð áður en vinnubókinni er lokað. Bara það sem læknirinn pantaði.
Hver er munurinn á Excel 2013 og Excel 2016?
Ef þú hefur notað VBA til að vinna með flýtivalmyndir í Excel 2007 eða eldri þarftu að vera meðvitaður um verulega breytingu.
Í fortíðinni, ef kóðinn þinn breytti flýtivalmynd, var sú breyting í gildi fyrir allar vinnubækur. Til dæmis, ef þú bættir nýju atriði við hægrismellisvalmyndina fyrir klefi, þá myndi sá nýi hlutur birtast þegar þú hægrismelltir á klefi í hvaða vinnubók sem er (auk annarra vinnubóka sem þú opnar síðar). Með öðrum orðum, breytingar á flýtileiðum voru gerðar á forritastigi .
Excel 2013 og Excel 2016 nota eitt skjalviðmót og það hefur áhrif á flýtivalmyndir. Breytingar sem þú gerir á flýtileiðavalmyndum hefur aðeins áhrif á virka vinnubókargluggann. Þegar þú keyrir kóðann sem breytir flýtivalmyndinni verður flýtivalmyndinni fyrir aðra glugga en virka gluggann ekki breytt. Þetta er róttæk frávik frá því hvernig hlutirnir virkuðu áður.
Annar snúningur: Ef notandinn opnar vinnubók (eða býr til nýja vinnubók) þegar virki glugginn sýnir breytta flýtileiðarvalmyndina, sýnir nýja vinnubókin einnig breytta flýtileiðarvalmyndina. Með öðrum orðum, nýir gluggar sýna sömu flýtivalmyndir og glugginn sem var virkur þegar nýju gluggarnir voru opnaðir.
Niðurstaða: Í fortíðinni, ef þú opnaðir vinnubók eða viðbót sem breytti flýtivalmyndum, gætirðu verið viss um að breyttu flýtivalmyndirnar væru tiltækar í öllum vinnubókum. Þú hefur ekki lengur þá fullvissu.
Búðu til sérsniðnar flýtivalmyndir í Access 2007
Fjölvihönnunarglugginn er öðruvísi í Access 2007 miðað við síðari útgáfur, svo stækkaðu eftirfarandi hluta til að fylgja með ef þú ert að nota Access 2007.
Skref 1 fyrir Access 2007: Búðu til makróhóp sem inniheldur valmyndarskipanirnar
Í þessu skrefi býrðu til makróhóp, þar sem hver makró verður sérstök skipun á flýtileiðarvalmyndinni þinni.
Hvað er makróhópur?
Fjölvihópur er einn fjölvihlutur sem inniheldur tvö eða fleiri sjálfstæð fjölvi. Einstakar fjölvi eru auðkenndar með því að slá inn heiti fyrir hvern fjölva í dálknum Macro Names. Í eftirfarandi mynd er Macro3 makróhópur. NotFoundMsg og FoundMsg eru einstök fjölvi innan hópsins, hver fjölvi samanstendur af tveimur fjölviaðgerðum.
Athugið: Macro Name dálkurinn er sjálfgefið falinn. Til að birta Macro Name dálkinn, á Hönnun flipanum, í Show/Hide hópnum, smelltu á Macro Names .
-
Á Búa til flipanum , í Annað hópnum, smelltu á Fjölvi . Ef þessi skipun er ekki tiltæk, smelltu á örina fyrir neðan annað hvort Module eða Class Module hnappinn og smelltu síðan á Macro .
-
Á Hönnun flipanum, í Sýna/Fela hópnum, smelltu á Macro Names til að birta Macro Name dálkinn.
-
Fyrir hverja skipun sem þú vilt í sérsniðnu flýtileiðarvalmyndinni þinni:
-
Í Macro Name dálknum, sláðu inn textann sem þú vilt birta á flýtileiðarvalmyndinni (til dæmis "Prenta skýrslu" eða "Vista").
Athugið: Til að búa til aðgangslykil þannig að þú getir notað lyklaborðið til að velja skipunina skaltu slá inn og-merki (&) á undan stafnum sem þú vilt að sé aðgangslykill í skipanafninu (til dæmis "&Vista"). Þetta bréf verður undirstrikað á valmyndinni.
-
Í dálkinum Aðgerð , veldu fyrstu aðgerðina sem þú vilt framkvæma þegar þú smellir á skipunina í flýtileiðarvalmyndinni.
-
Ef það eru fleiri aðgerðir sem þú vilt eiga sér stað þegar þú velur þessa skipun skaltu bæta þeim við í næstu línum. Fyrir hverja síðari aðgerð, skildu Macro Name reitinn auðan.
Athugið: Til að búa til línu á milli tveggja valmyndarskipana skaltu slá inn bandstrik (-) í Macro Name dálknum á milli viðeigandi valmyndarskipana.
-
Vistaðu og nefndu fjölvi, til dæmis mcrShortcutMenuCommands .
Eftirfarandi mynd sýnir dæmi um fjölvihóp fyrir sérsniðna valmynd eða flýtileiðavalmynd.
Skref 2 fyrir Access 2007: Búðu til fjölvi sem býr til valmyndina
Þetta skref gæti virst óþarfi, en til að búa til flýtileiðarvalmyndina úr fjölvihópnum sem þú bjóst til í skrefi 1, verður þú að búa til annað fjölvi sem inniheldur AddMenu fjölvaaðgerðina . Þetta fjölvi er stundum kallað "valmyndarmakró".
-
Á Búa til flipanum , í Annað hópnum, smelltu á Fjölvi . Ef þessi skipun er ekki tiltæk, smelltu á örina fyrir neðan annað hvort Module eða Class Module hnappinn og smelltu síðan á Macro .
-
Í fyrstu línu fjölvi velurðu AddMenu í Action listanum.
-
Undir Aðgerðarrök , í Valmyndarheiti reitnum, sláðu inn heiti valmyndarinnar (til dæmis "Tilkynna skipanir"). Þessi rök eru ekki nauðsynleg, en mælt er með því ef þú ætlar í skrefi 3 að bæta valmyndinni við borðaflipa (eins og viðbætur flipann á eyðublaði eða skýrslu). Ef valmyndinni er bætt við sem flýtileiðarvalmynd í skrefi 3, er valmyndarheitið hunsað.
-
Í valmyndinni Macro Name reitnum, sláðu inn heiti fjölvisins sem þú bjóst til í skrefi 1.
-
Vistaðu og nefndu fjölvi, til dæmis, mcrAddShortcutMenu .
Eftirfarandi mynd sýnir dæmi um valmyndarfjölva sem býr til valmyndina sem við hönnuðum í skrefi 1.
Skref 3 fyrir Access 2007: Tengdu valmyndina við stýringu, eyðublað, skýrslu eða gagnagrunn
Það fer eftir því hvar þú vilt að valmyndin birtist, notaðu eina eða fleiri af eftirfarandi aðferðum.
-
Bættu valmyndinni við flipann Viðbætur í eyðublaði eða skýrslu
Notaðu þessa aðferð ef þú vilt að valmyndin birtist á flipanum Viðbætur fyrir tiltekið eyðublað eða skýrslu, eins og sýnt er á eftirfarandi mynd:
-
Í yfirlitsrúðunni, hægrismelltu á eyðublaðið eða skýrsluna þar sem þú vilt að valmyndin birtist og smelltu síðan á Hönnunarsýn .
-
Á Hönnun flipanum, í Sýna/Fela hópnum, smelltu á Eignablað .
-
Veldu allan hlutinn með því að velja Eyðublað eða Skýrsla af listanum efst á verkefnaglugganum Eignablaði.
-
Á Annað flipanum á eignablaðinu, í eignareitnum Flýtileiðarvalmynd , sláðu inn heiti fjölvisins sem þú bjóst til í skrefi 2 (í þessu dæmi, "mcrAddShortcutMenu").
Næst þegar þú opnar eyðublaðið eða skýrsluna birtist flipinn Viðbætur á borði. Smelltu á flipann til að sjá valmyndina.
Fyrir frekari upplýsingar um aðferðir við að sérsníða borði, eins og að bæta við sérsniðnum flipa eða fela sjálfgefna flipa, sjáðu greinina Búa til sérsniðið borð í Access .
The Ribbon er hluti af Microsoft Office Fluent notendaviðmótinu.
-
Bættu við valmyndinni sem flýtivalmynd fyrir eyðublað, skýrslu eða stjórn
Notaðu þessa aðferð ef þú vilt að valmyndin birtist þegar þú hægrismellir á tiltekið eyðublað, skýrslu eða stýringu, eins og sýnt er á eftirfarandi mynd:
-
Í yfirlitsrúðunni, hægrismelltu á eyðublaðið eða skýrsluna þar sem þú vilt að flýtileiðarvalmyndin birtist og smelltu síðan á Hönnunarsýn .
-
Á Hönnun flipanum, í Sýna/Fela hópnum, smelltu á Eignablað .
-
Veldu stjórnina eða hlutinn sem þú vilt tengja flýtileiðavalmyndina við.
Athugið: Til að velja allan hlutinn, veldu Eyðublað eða Skýrsla af listanum efst á verkefnaglugganum Eignablaði.
-
Á Annað flipanum á eignablaðinu, í eignareitnum Flýtileiðarvalmyndarstiku , sláðu inn heiti fjölvisins sem þú bjóst til í skrefi 2 (í þessu dæmi, "mcrAddShortcutMenu").
-
Bættu við valmyndinni sem alþjóðlegri flýtileið
Þessi aðferð kemur í stað allra sjálfgefna flýtivalmynda í núverandi gagnagrunni. Sérsniðnar flýtivalmyndir sem þú hefur tengt við ákveðin eyðublöð, skýrslur eða stýringar hafa ekki áhrif.
-
Smelltu á Microsoft Office hnappinn og smelltu síðan á Access Options .
-
Í Aðgangsvalkostir valmynd, smelltu á Núverandi gagnagrunn .
-
Undir borði og tækjastikuvalkostir , í flýtileiðarvalmyndarstikunni , sláðu inn heiti fjölvisins sem þú bjóst til í skrefi 2 (í þessu dæmi, "mcrAddShortcutMenu").
-
Sérsniðnar flýtivalmyndir koma í stað sjálfgefna flýtivalmynda fyrir hlutina sem þeir eru tengdir við. Ef þú vilt halda ákveðnum Access skipunum til að nota á þessum valmyndum, notaðu RunCommand aðgerðina til að setja skipanirnar í fjölvihópa fyrir valmyndirnar sem þú vilt hafa þær í.
-
Sérsniðin flýtivalmynd sem er tengd við stýringu kemur í stað allra annarra sérsniðinna flýtivalmynda sem eru skilgreindar í gagnagrunninum. Sérsniðin flýtivalmynd sem er tengd eyðublaði eða skýrslu kemur í stað sérsniðinnar alþjóðlegrar flýtivalmyndar.
-
Þegar þú tilgreinir valmyndarfjölva fyrir eyðublað eða skýrslu eða fyrir gagnagrunninn, keyrir Access þetta valmyndarfjölva hvenær sem eyðublaðið, skýrslan eða gagnagrunnurinn er opnaður. Ef þú gerir breytingar á valmyndarfjölvi eða fjölvihópnum sem skilgreinir skipanir hans á meðan eyðublaðið, skýrslan eða gagnagrunnurinn er opinn, verður þú að loka eyðublaðinu, skýrslunni eða gagnagrunninum og opna það aftur til að sjá breytingarnar.
-
Til að búa til undirvalmynd, fylgdu skrefi 1 til að búa til sérstakan þjóðhagshóp sem inniheldur aðeins undirvalmyndarskipanirnar. Fylgdu síðan skrefi 1 aftur til að skilgreina skipanirnar fyrir valmyndina á hærra stigi. Bættu undirvalmyndinni við sem hlut í efri stigi fjölvihópnum með því að nota AddMenu fjölvaaðgerðina. Eftirfarandi mynd sýnir þjóðhagshópinn fyrir valmynd sem inniheldur undirvalmynd og sýnir síðan flýtivalmyndina sem myndast. Þriðja línan í fjölvihópnum býr til undirvalmyndina Export To... ( mcrSubMenu ).
Þú getur búið til mörg stig af undirvalmyndum með því að nota AddMenu aðgerðir í fjölvihópum fyrir hvert stig valmyndar. Gakktu úr skugga um að gefa upp gildi fyrir valmyndarheitið fyrir hverja AddMenu aðgerð, annars mun undirvalmyndin birtast sem auð lína í valmyndinni á hærra stigi.
-
Macro skilyrði eru aðeins studd í efstu valmyndarfjölva. Með öðrum orðum, þú getur notað skilyrði í valmyndarfjölvi til að ákvarða hvort tiltekin valmynd eða flýtileiðarvalmynd birtist, en aðeins fyrir valmyndirnar á efsta stigi. Þú getur ekki notað skilyrði til að birta eða fela skipanir eða undirvalmyndir á valmyndum. Þú getur líka notað skilyrði til að fela eða sýna sérsniðna flýtivalmynd eða alþjóðlega flýtivalmynd.
-
Valfrjálst getur valmyndarfjölvi sem þú býrð til í skrefi 2 verið hluti af fjölvihópi. Til dæmis, ef þú ert með nokkrar flýtivalmyndir fyrir mismunandi hluti eða stýringar, getur þú búið til einn fjölvihlut sem inniheldur öll nauðsynleg valmyndarfjölva. Gakktu úr skugga um að birta Macro Name dálkinn og sláðu inn einstakt nafn fyrir hvern fjölvi. Í skrefi 3, notaðu eftirfarandi merkingu til að vísa til makrósins: macrogroupname.macroname . Til dæmis, mcrAddShortcutMenus.AddMenu2 .