Excel 2016:n pikavalikoiden mukauttaminen VBA:ssa

Ennen Excel 2007:ää VBA-ohjelmoijat käyttivät CommandBar-objektia mukautettujen valikoiden, mukautettujen työkalurivien ja mukautettujen pikavalikoiden (oikea napsautus) luomiseen. Excel 2007:stä lähtien CommandBar-objekti on melko oudossa paikassa. Jos kirjoitat koodia valikon tai työkalupalkin mukauttamiseksi, Excel sieppaa koodin ja jättää huomiotta monet komennot.

Sen sijaan, että näyttäisit hyvin harkitun käyttöliittymän parannuksen, Excel 2007 (kuten uudemmat versiot) yksinkertaisesti upottaa mukautetut valikot ja työkalurivit kattavaan valintanauha-välilehteen nimeltä Apuohjelmat.

Valikko- ja työkalurivin mukautukset päätyvät ryhmään Apuohjelmat → Valikkokomennot tai Apuohjelmat → Mukautetut työkalurivit. Mutta pikavalikoiden mukauttaminen (joka myös käyttää CommandBar-objektia) toimii edelleen kuten aina - no, tavallaan.

Lopputulos? CommandBar-objekti ei ole enää kovin hyödyllinen, mutta se on edelleen ainoa tapa mukauttaa pikavalikoita.

Uuden kohteen lisääminen Solun pikavalikkoon

Alta löydät esimerkkikoodin, joka lisää uuden kohteen pikavalikkoon, joka tulee näkyviin, kun napsautat solua hiiren kakkospainikkeella. Sinun pitäisi pystyä mukauttamaan näitä esimerkkejä tarpeisiisi.

Voit parantaa Change Case -apuohjelmaa hieman asettamalla sen saataville Cell-pikavalikosta.

AddToShortcut-toiminto lisää uuden valikkokohdan Cell-pikavalikkoon. Voit mukauttaa sen osoittamaan omia makrojasi muuttamalla NewControl-nimisen objektin Caption- ja OnAction-ominaisuuksia.

Sub AddToShortCut()
  Himmeä palkki komentopalkkina
  Himmeä uusi ohjaus CommandBarButtonina
  DeleteFromShortcut
  Aseta palkki = Application.CommandBars ("solu")
  Aseta NewControl = Bar.Controls.Add _
     (Tyyppi:=msoControlButton, ID:=1, _
     väliaikainen:=Totta)
  NewControlin kanssa
    .Caption = "&Vaihda kirjainkokoa"
    .OnAction = "ChangeCase"
    .Style = msoButtonIconAndCaption
  Lopeta kanssa
Lopeta ala

Kun muokkaat pikavalikkoa, muutos pysyy voimassa, kunnes käynnistät Excelin uudelleen. Toisin sanoen muokatut pikavalikot eivät nollaudu, kun suljet VBA-koodin sisältävän työkirjan. Siksi, jos kirjoitat koodia pikavalikon muokkaamiseksi, kirjoitat melkein aina koodin kääntääksesi muutoksen vaikutuksen.

DeleteFromShortcut-toiminto poistaa uuden valikkokohdan solun pikavalikosta:

Sub DeleteFromShortcut()
  Virheestä Jatka seuraavaksi
  Application.CommandBars("Cell").Controls _
    ("&Vaihda kirjainkokoa"). Poista
Lopeta ala

Tämä näyttää, kuinka uusi valikon kohta näkyy, kun napsautat solua hiiren kakkospainikkeella.

Excel 2016:n pikavalikoiden mukauttaminen VBA:ssa

Solun pikavalikko, jossa näkyy mukautettu valikkokohta: Vaihda kirjain.

Ensimmäinen varsinainen komento muutaman muuttujan ilmoittamisen jälkeen kutsuu DeleteFromShortcut-proseduuria. Tämä lauseke varmistaa, että vain yksi Change Case -valikkokohde näkyy Solu-pikavalikossa. Kokeile kommentoida tätä riviä (kirjoita heittomerkki rivin alkuun) ja suorita toimenpide muutaman kerran – mutta älä hurahdu!

Napsauta solua hiiren kakkospainikkeella, niin näet useita Muuta kirjainkoko -valikkokohdan esiintymiä. Päästä eroon kaikista merkinnöistä suorittamalla DeleteFromShortcut useita kertoja (kerran jokaista ylimääräistä valikkokohtaa kohden).

Lopuksi tarvitset tavan lisätä pikavalikon kohta, kun työkirja avataan, ja poistaa valikkokohdan, kun työkirja suljetaan. Tämän tekeminen on helppoa. Lisää vain nämä kaksi tapahtumamenettelyä ThisWorkbook-koodimoduuliin:

Yksityinen alatyökirja_Open()
Soita AddToShortCut
Lopeta ala
Yksityinen alatyökirja_BeforeClose(Peruuta Boolean)
Soita DeleteFromShortcut
Lopeta ala

Workbook_Open-toiminto suoritetaan, kun työkirja avataan, ja Workbook_BeforeClose-toiminto suoritetaan ennen työkirjan sulkemista. Juuri mitä lääkäri määräsi.

Mitä eroa Excel 2013:ssa ja Excel 2016:ssa on?

Jos olet käyttänyt VBA:ta työskennelläksesi pikavalikoiden kanssa Excel 2007:ssä tai aiemmassa versiossa, sinun on oltava tietoinen merkittävästä muutoksesta.

Aiemmin, jos koodisi muokkasi pikavalikkoa, muutos oli voimassa kaikissa työkirjoissa. Jos esimerkiksi lisäsit uuden kohteen Solun hiiren kakkospainikkeella -valikkoon, uusi kohde tulee näkyviin, kun napsautat hiiren kakkospainikkeella minkä tahansa työkirjan solua (sekä muita myöhemmin avattavia työkirjoja). Toisin sanoen pikavalikkomuutoksia tehtiin sovellustasolla .

Excel 2013 ja Excel 2016 käyttävät yhtä asiakirjan käyttöliittymää, ja tämä vaikuttaa pikavalikoihin. Pikavalikoihin tekemäsi muutokset vaikuttavat vain aktiiviseen työkirjaikkunaan. Kun suoritat pikavalikkoa muokkaavan koodin, muiden ikkunoiden kuin aktiivisen ikkunan pikavalikko ei muutu. Tämä on radikaali poikkeama tavasta, jolla asiat toimivat.

Toinen käänne: Jos käyttäjä avaa työkirjan (tai luo uuden työkirjan), kun aktiivisessa ikkunassa näkyy muokattu pikavalikko, uusi työkirja näyttää myös muokatun pikavalikon. Toisin sanoen uudet ikkunat näyttävät samat pikavalikot kuin ikkuna, joka oli aktiivinen, kun uudet ikkunat avattiin.

Bottom line: Jos avasit aiemmin työkirjan tai lisäosan, jossa on muokattu pikavalikoita, voit olla varma, että muokatut pikavalikot ovat käytettävissä kaikissa työkirjoissa. Sinulla ei ole enää tätä varmuutta.

Luo mukautettuja pikavalikoita Access 2007:ssä

Makrosuunnitteluikkuna eroaa Access 2007:ssä uudempiin versioihin verrattuna, joten laajenna seuraavat osiot, jos käytät Access 2007:ää.

Vaihe 1 Access 2007:lle: Luo makroryhmä, joka sisältää valikkokomennot

Tässä vaiheessa luot makroryhmän, jonka jokainen makro on erillinen komento pikavalikossasi.

Mikä on makroryhmä?

Makroryhmä on yksi makroobjekti, joka sisältää kaksi tai useampia itsenäisiä makroja. Yksittäiset makrot tunnistetaan kirjoittamalla kullekin makrolle nimi Makronimet-sarakkeeseen. Seuraavassa kuvassa  Macro3  on makroryhmä. NotFoundMsg  ja  FoundMsg  ovat yksittäisiä makroja ryhmän sisällä, ja jokainen makro koostuu kahdesta makrotoiminnosta.

Esimerkki makroryhmästä

Huomautus:  Makron nimi -sarake   on piilotettu oletusarvoisesti. Jos haluat näyttää  makron nimi  -sarakkeen,   napsauta  Suunnittelu-  välilehden  Näytä/piilota -ryhmässä Makron nimet .

  1. Napsauta  Luo-  välilehden Muu  -  ryhmässä  Makro . Jos tämä komento ei ole käytettävissä, napsauta joko  Moduuli-  tai  Luokkamoduuli  -painikkeen alla olevaa nuolta ja napsauta sitten  Makro .

  2. Napsauta  Suunnittelu-  välilehden  Näytä/piilota  -ryhmässä  Makronimet , jolloin makron nimi -sarake  tulee näkyviin   .

  3. Jokaisen mukautetun pikavalikon komennon kohdalla:

    • Kirjoita Makronimi- sarakkeeseen   teksti, jonka haluat näyttää pikavalikossa (esimerkiksi "Tulosta raportti" tai "Tallenna").

      Huomautus:  Jos haluat luoda pääsyavaimen, jotta voit valita komennon näppäimistöllä, kirjoita et-merkki (&) sen kirjaimen eteen, jonka haluat käyttää pääsyavaimena komennon nimessä (esimerkiksi "&Tallenna"). Tämä kirjain alleviivataan valikossa.
    • Valitse Toiminto -sarakkeesta   ensimmäinen toiminto, jonka haluat suorittaa, kun napsautat pikavalikon komentoa.

    • Jos haluat suorittaa muita toimintoja, kun valitset tämän komennon, lisää ne seuraaville riveille. Jätä makron nimi -solu tyhjäksi jokaisen myöhemmän toiminnon kohdalla   .

      Huomautus:  Jos haluat luoda rivin kahden valikkokomennon väliin, kirjoita yhdysviiva (-)  Makronimi-  sarakkeeseen asianmukaisten valikkokomentojen väliin.
  4. Tallenna ja nimeä makro, esimerkiksi   mcrShortcutMenuCommands .

Seuraavassa kuvassa on esimerkkimakroryhmä mukautettua valikkoa tai pikavalikkoa varten.

Valikkomakroryhmä suunnittelunäkymässä

Vaihe 2 Access 2007:lle: Luo makro, joka luo valikon

Tämä vaihe saattaa tuntua tarpeettomalta, mutta luodaksesi pikavalikon vaiheessa 1 luomastasi makroryhmästä sinun on luotava toinen makro, joka sisältää AddMenu-  makrotoiminnon  . Tätä makroa kutsutaan joskus "valikkomakroksi".

  1. Napsauta  Luo-  välilehden Muu  -  ryhmässä  Makro . Jos tämä komento ei ole käytettävissä, napsauta joko  Moduuli-  tai  Luokkamoduuli  -painikkeen alla olevaa nuolta ja napsauta sitten  Makro .

  2. Valitse makron ensimmäisellä rivillä  Toiminto  -luettelosta  AddMenu  .

  3. Kirjoita  Toiminnon argumentit -kohdassa  valikon nimi  -ruutuun valikon nimi (esimerkiksi "Raporttikomennot"). Tämä argumentti ei ole pakollinen, mutta sitä suositellaan, jos vaiheessa 3 aiot lisätä valikon valintanauha-välilehteen (kuten lomakkeen  tai  raportin Apuohjelmat-välilehteen). Jos valikko lisätään pikavalikona vaiheessa 3,  Valikon nimi  -argumentti ohitetaan.

  4. Kirjoita Valikko  makron nimi -ruutuun  vaiheessa 1 luomasi makron nimi.

  5. Tallenna ja nimeä makro, esimerkiksi  mcrAddShortcutMenu .

Seuraavassa kuvassa on esimerkkivalikkomakro, joka luo vaiheessa 1 suunnittelemamme valikon.

Valikkomakro suunnittelunäkymässä

Vaihe 3 Access 2007:lle: Liitä valikko ohjausobjektiin, lomakkeeseen, raporttiin tai tietokantaan

Käytä yhtä tai useampaa seuraavista toimenpiteistä riippuen siitä, missä haluat valikon näkyvän.

  • Lisää valikko lomakkeen tai raportin Apuohjelmat-välilehteen

    Käytä tätä menettelyä, jos haluat valikon näkyvän  tietyn lomakkeen tai raportin Apuohjelmat-  välilehdellä, kuten seuraavassa kuvassa:

    Lisäosat-välilehti, joka sisältää mukautetun valikon

    1. Napsauta siirtymisruudussa hiiren kakkospainikkeella lomaketta tai raporttia, johon haluat valikon näkyvän, ja napsauta sitten  Suunnittelunäkymää .

    2. Napsauta  Suunnittelu-  välilehden  Näytä/piilota-  ryhmässä  Ominaisuustaulukko .

    3. Valitse koko objekti valitsemalla  Lomake  tai  Raportti  Ominaisuustaulukko-tehtäväruudun yläosassa olevasta luettelosta.

    4. Kirjoita   ominaisuustaulukon  Muu- välilehden Pikavalikko  -ominaisuusruutuun vaiheessa 2 luomasi makron nimi (tässä esimerkissä "mcrAddShortcutMenu").

      Kun seuraavan kerran avaat lomakkeen tai raportin, Apuohjelmat  -  välilehti tulee näkyviin valintanauhaan. Napsauta välilehteä nähdäksesi valikon.

      Lisätietoja valintanauhan mukauttamistekniikoista, kuten mukautettujen välilehtien lisäämisestä tai oletusvälilehtien piilottamisesta, on artikkelissa  Mukautetun valintanauhan luominen Accessissa .

      Nauha on osa Microsoft Office Fluent -käyttöliittymää.

  • Lisää valikko lomakkeen, raportin tai ohjausobjektin pikavalikkona

    Käytä tätä toimenpidettä, jos haluat valikon tulevan näkyviin, kun napsautat hiiren kakkospainikkeella tiettyä lomaketta, raporttia tai ohjausobjektia, kuten seuraavassa kuvassa:

    Yksinkertainen pikavalikko

    1. Napsauta siirtymisruudussa hiiren kakkospainikkeella lomaketta tai raporttia, johon haluat pikavalikon näkyvän, ja napsauta sitten  Suunnittelunäkymää .

    2. Napsauta  Suunnittelu-  välilehden  Näytä/piilota-  ryhmässä  Ominaisuustaulukko .

    3. Valitse ohjausobjekti tai objekti, johon haluat liittää pikavalikon.

      Huomautus:  Valitse koko objekti valitsemalla  Lomake  tai  Raportti  Property Sheet -tehtäväruudun yläosassa olevasta luettelosta.

    4. Kirjoita   ominaisuustaulukon  Muu- välilehden Pikavalikkopalkki-  ominaisuusruutuun vaiheessa 2 luomasi makron nimi (tässä esimerkissä "mcrAddShortcutMenu").

  • Lisää valikko yleiseksi pikavalikkoksi

    Tämä toimenpide korvaa kaikki nykyisen tietokannan oletuspikavalikot. Tämä ei vaikuta tiettyihin lomakkeisiin, raportteihin tai ohjaimiin liittämiisi mukautettuihin pikavalikoihin.

    1. Napsauta  Microsoft Office -painiketta  ja valitse sitten  Käyttöasetukset .

    2.  Napsauta  Accessin asetukset -valintaikkunassa  Nykyinen tietokanta .

    3. Kirjoita  valintanauhan ja työkalupalkin asetukset -kohdan  Pikavalikkopalkki-  ruutuun vaiheessa 2 luomasi makron nimi (tässä esimerkissä "mcrAddShortcutMenu").

  • Mukautetut pikavalikot korvaavat oletuspikavalikot objekteille, joihin ne on liitetty. Jos haluat säilyttää tietyt Access-komennot näissä valikoissa käytettäviksi, käytä  RunCommand-  toimintoa sijoittaaksesi komennot niiden valikkojen makroryhmiin, joihin haluat ne sisällyttää.

  • Ohjaimeen liitetty mukautettu pikavalikko korvaa kaikki muut tietokannassa määritetyt mukautetut pikavalikot. Lomakkeeseen tai raporttiin liitetty mukautettu pikavalikko korvaa mukautetun yleisen pikavalikon.

  • Kun määrität valikkomakron lomakkeelle, raportille tai tietokannalle, Access suorittaa tämän valikkomakron aina, kun lomake, raportti tai tietokanta avataan. Jos teet muutoksia valikkomakroon tai makroryhmään, joka määrittää sen komennot, kun lomake, raportti tai tietokanta on auki, sinun on suljettava lomake, raportti tai tietokanta ja avattava se uudelleen nähdäksesi muutokset.

  • Luo alivalikko noudattamalla vaihetta 1 luodaksesi erillisen makroryhmän, joka sisältää vain alivalikon komennot. Noudata sitten uudelleen vaihetta 1 määrittääksesi ylemmän tason valikon komennot. Lisää alivalikko ylemmän tason makroryhmän kohteeksi käyttämällä  AddMenu-  makrotoimintoa. Seuraava kuva näyttää makroryhmän valikolle, joka sisältää alivalikon, ja näyttää sitten tuloksena olevan pikavalikon. Makroryhmän kolmas rivi luo Vie kohteeseen  ...  -alivalikon ( mcrSubMenu ).

    Pikavalikko, joka sisältää alivalikon

    Voit luoda useita alivalikkotasoja käyttämällä  AddMenu-  toimintoja kunkin valikon tason makroryhmissä. Varmista, että annat arvon  Valikon nimi  -argumentille jokaiselle  AddMenu  -toiminnolle, muuten alivalikko näkyy tyhjänä rivinä ylemmän tason valikossa.

  • Makroehtoja tuetaan vain ylätason valikon makrossa. Toisin sanoen, voit käyttää ehtoa valikkomakrossa määrittääksesi, näytetäänkö tietty valikko tai pikavalikko, mutta vain ylimmän tason valikoissa. Et voi käyttää ehtoja valikoiden komentojen tai alivalikoiden näyttämiseen tai piilottamiseen. Voit myös piilottaa tai näyttää mukautetun pikavalikon tai yleisen pikavalikon käyttämällä ehtoa.

  • Vaiheessa 2 luomasi valikkomakro voi valinnaisesti olla osa makroryhmää. Jos sinulla on esimerkiksi useita pikavalikkoja eri objekteille tai säätimille, voit luoda yhden makroobjektin, joka sisältää kaikki tarvittavat valikkomakrot. Varmista, että näet  Makronimi-  sarakkeen ja kirjoita jokaiselle makrolle yksilöllinen nimi. Käytä vaiheessa 3 makroon viittaavaa merkintää:  makroryhmännimi.makronimi . Esimerkiksi  mcrAddShortcutMenus.AddMenu2 .


Kuinka estää Microsoft Wordia avaamasta tiedostoja vain luku -tilassa Windowsissa

Kuinka estää Microsoft Wordia avaamasta tiedostoja vain luku -tilassa Windowsissa

Kuinka estää Microsoft Wordia avaamasta tiedostoja vain luku -tilassa Windowsissa Microsoft Word avaa tiedostot vain luku -tilassa, jolloin niiden muokkaaminen on mahdotonta? Älä huoli, menetelmät ovat alla

Microsoft Word -asiakirjojen virheellisen tulostuksen korjaaminen

Microsoft Word -asiakirjojen virheellisen tulostuksen korjaaminen

Virheiden korjaaminen virheellisten Microsoft Word -asiakirjojen tulostuksessa. Virheet tulostettaessa Word-asiakirjoja, joissa on muuttuneet fontit, sotkuiset kappaleet, puuttuva teksti tai kadonnut sisältö ovat melko yleisiä. Älä kuitenkaan

Pyyhi kynä- ja korostuspiirrokset PowerPoint-dioistasi

Pyyhi kynä- ja korostuspiirrokset PowerPoint-dioistasi

Jos olet piirtänyt PowerPoint-dioihin esityksen aikana kynää tai korostuskynää, voit tallentaa piirustukset seuraavaa esitystä varten tai poistaa ne, jotta seuraavan kerran näytät ne. Aloitat puhtailla PowerPoint-dioilla. Pyyhi kynä- ja korostuskynäpiirrokset noudattamalla näitä ohjeita: Pyyhi rivit yksi kerrallaan […]

Tyylikirjaston sisältö SharePoint 2010:ssä

Tyylikirjaston sisältö SharePoint 2010:ssä

Tyylikirjasto sisältää CSS-tiedostoja, Extensible Stylesheet Language (XSL) -tiedostoja ja kuvia, joita käyttävät ennalta määritetyt sivupohjat, sivuasettelut ja säätimet SharePoint 2010:ssä. CSS-tiedostojen etsiminen julkaisusivuston tyylikirjastosta: Valitse Sivuston toiminnot→ Näytä Kaikki sivuston sisältö. Sivuston sisältö tulee näkyviin. Style-kirjasto sijaitsee […]

Muotoile numerot tuhansiksi ja miljooniksi Excel-raporteissa

Muotoile numerot tuhansiksi ja miljooniksi Excel-raporteissa

Älä hukuta yleisöäsi jättimäisillä numeroilla. Microsoft Excelissä voit parantaa koontinäyttöjesi ja raporttiesi luettavuutta muotoilemalla numerot näyttämään tuhansia tai miljoonia.

SharePoint-sivustojen jakaminen ja seuraaminen

SharePoint-sivustojen jakaminen ja seuraaminen

Opi käyttämään SharePointin sosiaalisen verkostoitumisen työkaluja, joiden avulla yksilöt ja ryhmät voivat kommunikoida, tehdä yhteistyötä, jakaa ja pitää yhteyttä.

Kuinka muuntaa päivämäärät Julian-muotoihin Excelissä

Kuinka muuntaa päivämäärät Julian-muotoihin Excelissä

Juliaanisia päivämääriä käytetään usein valmistusympäristöissä aikaleimana ja pikaviitteenä eränumerolle. Tämän tyyppisen päivämääräkoodauksen avulla jälleenmyyjät, kuluttajat ja huoltoedustajat voivat tunnistaa tuotteen valmistusajankohdan ja siten tuotteen iän. Julian-päivämääriä käytetään myös ohjelmoinnissa, armeijassa ja tähtitiedessä. Erilainen […]

Access-verkkosovelluksen luominen

Access-verkkosovelluksen luominen

Voit luoda verkkosovelluksen Access 2016:ssa. Mikä verkkosovellus sitten on? No, verkko tarkoittaa, että se on verkossa, ja sovellus on vain lyhenne sanoista "sovellus". Mukautettu verkkosovellus on online-tietokantasovellus, jota käytetään pilvestä selaimen avulla. Rakennat ja ylläpidät verkkosovellusta työpöytäversiossa […]

Pikakäynnistyspalkki SharePoint 2010:ssä

Pikakäynnistyspalkki SharePoint 2010:ssä

Useimmat SharePoint 2010:n sivut näyttävät navigointilinkkien luettelon pikakäynnistyspalkissa sivun vasemmassa reunassa. Pikakäynnistyspalkki näyttää linkit esitellyn sivuston sisältöön, kuten luetteloihin, kirjastoihin, sivustoihin ja julkaisusivuihin. Pikakäynnistyspalkki sisältää kaksi erittäin tärkeää linkkiä: Koko sivuston sisältö -linkki: […]

Mitä Ratkaisijan virheilmoitukset Excelissä tarkoittavat?

Mitä Ratkaisijan virheilmoitukset Excelissä tarkoittavat?

Yksinkertaisille ongelmille Excelin Ratkaisija löytää yleensä nopeasti optimaaliset Ratkaisijamuuttujien arvot tavoitefunktiolle. Mutta joissakin tapauksissa Ratkaisijalla on vaikeuksia löytää Solver-muuttujan arvoja, jotka optimoivat tavoitefunktion. Näissä tapauksissa Ratkaisija näyttää yleensä viestin tai virheilmoituksen, joka kuvaa tai käsittelee ongelmaa, jonka […]