VBA létre menü

Tikhvin Vitali
VBA létrehozása menük

Belül a Word és Excel alkalmazások, három menütípust:
  • Head menü - a megjelenő menüben alapértelmezésben a tetején az alkalmazás ablak, a menü felett.
  • Helyi menü - a menü jelenik meg, amikor rákattint az egér jobb gombjával bármely tárgy vagy (különösen Word dokumentum vagy Excel munkafüzet).
  • Toolbar - menü, ami lehet be- és kikapcsolni a szabványos elemek agy Menü: Nézet eszköztár.
A leggyakrabban VBA programozó dolgozik a fejét, és a helyi menüből. Ebben az útmutatóban fogunk dolgozni, hogy az ilyen típusú alkalmazások menüben.

Fellebbezés a menü segítségével tárgyak CommandBars és ActiveMenuBar. Az alábbiakban példák igénybevételét az Index tulajdonában menü a neve „szöveg”, és a fejét az aktív alkalmazás menü:

Menü, akkor létrehozhat egy módszert hozzá CommandBars objektumot.
Az alábbiakban két példát a teremtés, az agy és a helyi menüből:
Megjegyzés:
A helyi menü és a fejét a felhasználó által létrehozott, ott még nem zárta le az alkalmazást, zárását követően, amelyek a helyi menü, és a fejét eltávolítjuk belőle.

Head felhasználói menü jeleníthető meg a Visible tulajdonságát, és a helyi menüben a ShowPopup módszer. Ha a felhasználó hozott létre egy szülő menüt, és hozta, ez helyettesíti a standard alkalmazás menüben, és ott, amíg az alkalmazás be van zárva, vagy amíg a menü el van távolítva.

Példa: Ez a példa azt mutatja, hogyan lehet a helyi menü megjelenítéséhez, és a kérelem fejét.

Felhasználói menük segítségével eltávolítható a Törlés funkciót. Visszaállítása az ingatlan lehet tisztítani a felhasználói menüből, vagy az alkalmazás menüből a hozzáadott elemeket.

például:

Menüpont által hozzáadott Controls azt kifogásolják, hogy a leszármazottja tárgyak CommandBars és ActiveMenuBar.

Példa: Ebben a példában, a további tétel hozzáadjuk az első szintű menü. Input opcionális paraméter típusa Add módszert lehet beállítani a megfelelő típusú hozzáadott menüpontot. A leggyakrabban használt értékei az ingatlan: msoControlButton - almenü nem tartalmazza a többi albekezdésben, msoControlPopup - almenü van egy lista a folyamatban lévő al a következő szintre. Ha ez nem kötelező, bemenet az ID paramétert az Add módszerének beállítása 850, majd a hozzáadott menüpont lett kiválasztva. Miután létrehozott egy menüpont meghatározott tulajdonságait, amelyeket a későbbiekben fejezet Tulajdonságok és metódusok menüben.
Az alábbiakban eljárások hozzátéve menüpontok: Ezek az eljárások létre kell hoznia egy modult az általános rutinok a projekt, ahol a terméket lesz hozzá.
A közvetlen hozzáadásával menüpontok használt DobavitPunkty rutinok DobavitPunkty2.
Az alábbiakban utasítások bemeneti paraméterek ezen eljárások:
  1. Meg kell adnia a nevét a menüből. Ha az eljárás ImyaMenyu hozzá elemeket beállítása egy üres karakterlánc, akkor a pontokat adunk a szülő alkalmazás menüjében.
    A nevét a szokásos helyi menü a Word az alábbiak szerint:
    • „Text” -kontekstnoe menüben a kijelölt szöveget
    • „Curve” - a helyi menü a bérelt vonalak
    • „Alakzatok” - Jobb kattintás a kiválasztott alakzat
  2. Meg kell adnia a nevét az eseményeket, mint egy húr, vesszővel elválasztva.
  3. esemény neve nem tartalmazhat szóközt és szimbólumokat .
  4. Ha azt szeretnénk, hogy rögzítse, és az esemény nevét menü és aláírása menüpontot vannak elválasztva.
  5. Ha a bemeneti esemény neve szóközt tartalmaz, és a szimbólum , Ezek a karakterek automatikusan eltávolítja a nevét az esemény, és ha nem adja meg az aláírás menüpont, az aláírás menüpont átkerül az esemény neve tiltott karaktereket.
  6. Mielőtt az esemény neve menüpontban be számokat, hogy fogja meg a kódot az ikon menüt (lásd. Kódok ikon menüpontok). De a menüelem altételei, nem lehet egy ikont.
  7. Mielőtt az esemény neve elemet, és mielőtt számjegy azonosítja az ikon menüpontot, megadhat egy „_” alsó vagy mínusz „-” jel, akkor a menüpont lesz elkülönítve a többi elem a választóvonal.
  8. Ha azt szeretnénk, hogy hangsúlyozzák a levél aláírást megelőzően szimbólumává vált
  9. Ha azt szeretnénk, hogy jelölje meg a aláírás menüpont menüpont kell végződhet szóközzel (a menüelem altételei, nem lehet elválasztani).
  10. A bemeneti paraméterek lehetnek PunktyMenyu albekezdés, melyeket külön a fő menüpont.
  11. DobavitPunkty eljárás adhat több példány az első szinten, és al őket. Eljárás DobavitPunkty2 csak egy darab az első szinten lehet adni (egy menetben az eljárás), de ezen a ponton, akkor add al-mind a második és a harmadik szint.
  12. Hozzáadása előtt menüpontok létrehozása szükséges a projekt keretében, amely a hozzáadott menüpontok, a modul közös rutinok, amely tartalmazza az eljárásokat illeszkedő nevű esemény nevét a menüpontok (menüpontok, amelyek al-elemek, nem kell kérni, mert DobavitPunkty eljárások nem adja meg a megfelelő OnAction -nak az adatok menüpontok. cm. a tulajdonságok és módszerek a menüpontok).

    például:



Ábra. 1 legújabbak elemeket a helyi menü „Text”


Megjegyzés:
Ha hozzá szeretne adni egy almenü, majd a negyedik szint, akkor meg kell, hogy növekszik a harmadik szinten menüpont odnoseansnym helyi menüből (lásd. Odnoseansnoe helyi menü)

Szabályozza a tulajdonságok és módszerek az objektum használják retusálni menüpontok. Delete eljárás menüpont elrejteni, és megjeleníti a menüpont icpolzuyut Visible tulajdonságát a tiltás és engedélyével a Tulajdonságok menüpontot - Enabled. Ahhoz, hogy hozzon létre egy elválasztó vonalat a menüpont tulajdon - BeginGroup. Visible tulajdonságát, Engedélyezett és BeginGroup számít megfelelően Igaz, ha a menü látható, valamint aktív és elkülönítve a többi elem a választóvonal és hamis, ha a menü nem látható és nem aktív, és nincs választóvonal. A menü elemek, amelyek al-ingatlan-be lehet állítani FaceId kód menü ikonra (lásd. Kódok ikon menüpontok).
Ha a menüelem altételei, akkor ezen a ponton lehet állítani Controls.ShortcutText funkció, amely a jogot az aláírás bekezdés, amely megmondja, hogy mi a kombinációja gombok rendelve ez a menüpont (lásd. Kiosztása vezérlőgombok a menüpont).
Keresztül a OnAction tulajdon, akkor adja meg a nevét az eljárás, amelynek nincs bemeneti paramétereket. Ez az eljárás indul, ha rákattint az egér bal gombjával a megfelelő menüpont.
Ha a menü el van rejtve, de BeginGroup menü tulajdonság True értékre van állítva, a határvonal egy rejtett menüpont láttuk el, majd ezt követően pontokat.
Akkor távolítsa el, és elrejti elemeket az első szinten, amikor kiveszi, és elrejti a felső szinten, az összes almenü található a törölt elem törlésre kerülnek, és elrejteni vele.
Controls a bemeneti paramétere a tárgy van írva, vagy aláírás menüpont vagy az index.
Rutinok DobavitPunkty (. Lásd hozzáadása menüpont) adunk két pontot menü (nem jelölt menüpontot, és az azonos típusú, hogy - jelölt). És a menü csak akkor látható, hogy a fenti terméket. Nem jelölt menüpont van egy aláírás nélküli tér végén, és a jelölt nem rés, az utolsó aláírás (szabványos elemeket, hogy a szabály nem vonatkozik a menüben).

például:

A menü, amely nem rendelkezik altételei, akkor meg a kapcsolót.
Rutinok DobavitPunkty (. Lásd hozzáadása menüpont) adunk két pontot menü (nem jelölt menüpontot, és az azonos típusú, hogy - jelölt). És a menü csak akkor látható, hogy a fenti terméket. Nem jelölt menüpont van egy aláírás nélküli tér végén, és jelzett a különbség, az utolsó aláírás. Ezért meg kell változtatni az eseményen belül eljárást a menüpontok Visible tulajdonságát hátoldalon: Ha a kapcsoló be van kapcsolva, a Visible tulajdonságát a megfelelő menüpont True: Megjegyzés:
Az összes fenti igaz csak a kapcsolók, amelyeket hozzáadott DobavitPunkty eljárásokat. Normál menüpontok kapcsolókkal, épült egy másik elvet.

Annak érdekében, hogy megtudja, a kódok menü ikonok, akkor létre kell hozni az alábbi eljárást. És futni FaceIdPicture eljárást. Ha továbbra is a visszavonását az ikonok, akkor nyomja meg az Entert, a teljes - ki kell választani a helyi menüből a „Kilépés”:

Hozhat létre odnoseansnoe menüből. Ez a menü a legkényelmesebb az Excel. mert Ebben az alkalmazásban Excel mérleg egy olyan esemény, hogy a fogások kattintva a jobb egérgombbal rajta. Ez lehetővé teszi, hogy rögzítse a kimenete a standard helyi menü megjelenítéséhez, és helyükbe. Sajnos, Word dokumentum nem rendelkezik egy ilyen esemény, és a Word alkalmazás csak akkor lehetséges, hogy hozzá elemeket a szokásos helyi menü. Ezért a Word SozdatKontekstnoeMenyu funkció csak akkor lehet végrehajtani, mint egy eljárást a folytatása a harmadik al-szintű menü (ahogy a végén a fejezetben).
Annak érdekében, hogy rögzítse a helyi menüben az Excel munkalapon modulban kell a megfelelő lapot, egy esemény által kiváltott BeforeRightClick Cansel eljárás beállított értéket a bemeneti paraméter True. Keresztül az oszlop és sor tulajdonságok Cél objektum lehet zárni kimeneti szabvány helyi menü egy bizonyos régióban a lap.

Példa: Ebben a példában, rögzített normál helyi menü a második oszlopra, és a negyedik sor, beleértve.
Ahhoz, hogy hozzon létre egy helyi menü, a modul a tervezet általános rutinok létrehozásához funkció: ugyanabban a modulban, akkor kell DannyeMenyu eljárás általunk fejezetben leírt Elemek hozzáadása a menühöz. Ugyanebben a fejezetben beszélt a bemeneti paramétere PunktyMenyu DobavitPunkty eljárást. Ez a beállítás felel PunktyMenyu SozdatKontekstnoeMenyu funkciót. Váltás bekezdésben odnoseansnogo helyi menüben nem épül, mint egy kapcsoló DobavitPunkty megállapított eljárások.

Példa: Ez a példa létrehoz egy Excel munkalapon helyi menüben változtatni terméket.
SozdatKontekstnoeMenyu funkció lehet futni, mint egy eljárást, például a folytatása a második al-szintű esemény eljárások közvetlenül a második szint menüpontok (Word ezt a szolgáltatást futtatni a harmadik szintű almenü).

Példa: Ebben a példában megnyomása után az egér jobb gombjával a megfelelő lapot, majd kiválasztja a megfelelő menüpontok, a helyi menü lesz:


P 2. Felhasználó helyi menü elem kiválasztása után PervyyUroven

P 3. Felhasználói Context menü elem kiválasztása után VtoroyUroven1

mert a OnAction tulajdonában menüpont az eljárással együtt járó nincs bemeneti paraméterek és az eljárást anélkül bemeneti paraméterek VBA Word és Excel makró, hozzárendeljük a gombok a megfelelő makro, megfelel a rendeltetési vezérlő gombok menüpontok hozzárendelve.
Vezérlő gombok makrók is hozzárendelhető az alkalmazás felhasználói menü és a program.

A Word, a kezelő gombok vannak rendelve az alábbiak szerint:
  1. Belépés a menübe: Az eszköztár-beállítások-
  2. A „Beállítások” fülön válassza ki a „parancsok” és kattintson a „Keyboard ...” látni. P IC 4.


Ábra. 5 funkció gombok a Word


Az Excel, a gombok vannak rendelve az alábbiak szerint:

  1. Belépés a menübe: Tools-Macro-makrók
  2. A megjelenő ablakban válasszuk ki a kívánt nevet a makro- és kattintson a „Beállítások ...” P IC 6.
  • A poyavishemsya ablakban megy a „shortcut”, lásd. 7. ábrára.
  • A „helyi” a módban a visszafizetés Caps Loock (nagybetűvel), hogy adja meg a latin betű együtt a Shift billentyűt, vagy anélkül, majd kattintson az OK cm., 7. ábra.

  • F Ex. 7 célablakba vezérlőgombok makró Excel.


    Megjegyzés:
    Keresztül az Excel menü hozzá lehet rendelni egy billentyű csak kombinációban a CTRL billentyű vagy CTRL + SHIFT, de a szoftver ezt az alkalmazást, akkor meg más kombinációk gombjai.

    Az Excel, akkor programból hozzárendelni a makró funkció módszer révén OnKey objektum alkalmazás. OnKey módszer két bemeneti paraméterek Key - a kinevezését billentyűkombinációk és eljárási - adja meg a makró nevét, ami által kijelölt ellenőrző gomb (mielőtt a makró nevét lehet a neve a letöltött Excel munkafüzetet, ahol a makró lásd az alábbi példát neve a könyv közös makrók .. - "PERSONAL.XLS"). Ha az eljárási paraméter nincs megadva, a megadott billentyűkombináció kivesszük a makrót, amelyre telepítették. Ha az eljárási paraméter egy üres string, a megadott billentyűkombináció le van zárva az Excel. A kulcs kombináció definíciója a karakterlánc, vonal gombok vannak kódolva az alábbiak szerint:

    Ebben a példában a gombok vannak rendelve Alt + 1 makró Punkt1, és a kulcsokat a Ctrl + Shift + A makró punktą található egy Excel fájlt a „My Book”. És eltávolította a fenntartott kombinációja gombok CTRL + Shift + B a makro projekt.
    A Word, a makro gombok által meghatározott módszer hozzáadása billentyűparancsok tárgy, és eltávolítani a módszer letiltása FindKey objektumot. A módszer hozzáadása billentyűkombinációinak objektum a keycode bemeneti paraméter, amely meghatározza a kombinációja vezérlőgombok, és a parancs bemeneti paraméter, amely meghatározza a makró nevét. BuildKeyCode funkciót arra tervezték, hogy állítsa be a kódot vezérlőgombok kulcskódos bemeneti paramétere. BuildKeyCode funkció lehet egy-négy bemeneti érveket, amelyek által meghatározott megfelelő állandók: Through CustomizationContext tulajdonság lehet állítani a dokumentum, amely hozzáadott vagy törölt, amelyben a kombináció gombok.

    például:

    Primechenie radaktora

    Kapcsolódó cikkek