Fleksibiliteti i argumentit të butonave VBA e bën të lehtë personalizimin e kutive të mesazheve në Excel. Ju mund të zgjidhni cilat butona të shfaqen, të përcaktoni nëse shfaqet një ikonë dhe të vendosni se cili buton është i paracaktuar (butoni i paracaktuar "klikon" nëse përdoruesi shtyp Enter).
Ju mund të përdorni konstante të integruara për argumentin e butonave. Nëse preferoni, mund të përdorni vlerën në vend të një konstante (por përdorimi i konstantave të integruara është shumë më i lehtë).
Për të përdorur më shumë se një nga këto konstante si argument, thjesht lidhni ato me një operator +. Për shembull, për të shfaqur një kuti mesazhi me butonat Po dhe Jo dhe një ikonë pasthirrme, përdorni shprehjen e mëposhtme si argumentin e dytë MsgBox:
vbPo Jo + vbThirrje
Ose, nëse preferoni ta bëni kodin tuaj më pak të kuptueshëm, përdorni një vlerë prej 52 (d.m.th., 4 + 48).
Shembulli i mëposhtëm përdor një kombinim konstantesh për të shfaqur një kuti mesazhesh me një buton Po dhe një buton Jo (vbPo Jo) si dhe një ikonë të pikëpyetjes (vbQuestion). Konstantja vbDefaultButton2 cakton butonin e dytë (Jo) si butonin e paracaktuar - domethënë butonin që klikohet nëse përdoruesi shtyp Enter. Për thjeshtësi, këto konstante i caktohen variablit Config dhe më pas përdorin Config si argumentin e dytë në funksionin MsgBox:
Nën GetAnswer3()
Konfigurimi i zbehtë për aq kohë sa
Dim Ans si numër i plotë
Konfigurimi = vbPo Jo + vbQuestion + vbDefaultButton2
Ans = MsgBox ("Përpunoni raportin mujor?", Konfiguro)
Nëse Ans = vbPo, atëherë RunReport
Fundi Nën
Shikoni kutinë e mesazheve që shfaq Excel kur ekzekutoni procedurën GetAnswer3. Nëse përdoruesi klikon butonin Po, rutina ekzekuton procedurën e quajtur RunReport. Nëse përdoruesi klikon butonin Jo (ose shtyp Enter), rutina përfundon pa asnjë veprim. Për shkak se argumenti i titullit ishte hequr në funksionin MsgBox, Excel përdor titullin e paracaktuar, Microsoft Excel.
Argumenti i butonave të funksionit MsgBox përcakton se çfarë shfaqet në kutinë e mesazheve.
Rutina e mëposhtme ofron një shembull tjetër të përdorimit të funksionit MsgBox:
Nën GetAnswer4()
Mesazhi i zbehtë si varg, titulli si varg
Konfigurimi i zbehtë si numër i plotë, Ans si numër i plotë
Msg = "A doni të përpunoni raportin mujor?"
Msg = Msg & vbNewLine & vbNewLine
Msg = Msg & "Përpunimi i raportit mujor do të"
Msg = Msg & “merr afërsisht 15 minuta. ajo "
Msg = Msg & "do të gjenerojë një raport 30 faqesh për"
Msg = Msg & "të gjitha zyrat e shitjeve për momentin"
Msg = Msg & "muaj".
Titulli = "Kompania e marketingut XYZ"
Konfigurimi = vbPo Jo + vbPyetje
Përgjigje = MsgBox (Msg, konfigurim, titull)
Nëse Ans = vbPo, atëherë RunReport
Fundi Nën
Ky shembull tregon një mënyrë efikase për të specifikuar një mesazh më të gjatë në një kuti mesazhi. Një ndryshore (Msg) dhe operatori i lidhjes (&) përdoren për të ndërtuar mesazhin në një seri deklaratash. Konstanta vbNewLine fut një karakter të ndërprerjes së linjës që fillon një rresht të ri (përdoreni atë dy herë për të futur një rresht bosh). Argumenti i titullit përdoret për të shfaqur një titull tjetër në kutinë e mesazheve. Këtu është kutia e mesazhit që shfaq Excel kur ekzekutoni këtë procedurë.
Kjo kuti dialogu, e shfaqur nga funksioni MsgBox, shfaq një titull, një ikonë dhe dy butona.
Ju mund të përdorni konstante (të tilla si vbYes dhe vbNo) për vlerën e kthyer të një funksioni MsgBox. Këtu janë disa konstante të tjera.
Konstante |
Vlera |
Cfare do te thote |
vbOK |
1 |
Përdoruesi kliko OK. |
vbAnulo |
2 |
Përdoruesi klikoi "Anulo". |
vbAbort |
3 |
Përdoruesi klikoi "Aborto". |
vbProvo përsëri |
4 |
Përdoruesi kliko "Riprovo". |
vbInjoroje |
5 |
Përdoruesi klikoi Injoro. |
vbPo |
6 |
Përdoruesi kliko Po. |
vbNr |
7 |
Përdoruesi kliko Nr. |
Dhe kjo është pothuajse gjithçka që duhet të dini për funksionin MsgBox. Megjithatë, përdorni kutitë e mesazheve me kujdes. Zakonisht nuk ka asnjë arsye për të shfaqur kutitë e mesazheve që nuk shërbejnë për asnjë qëllim. Për shembull, njerëzit priren të mërziten kur shohin një kuti mesazhi çdo ditë që lexon Mirëmëngjes. Faleminderit për ngarkimin e librit të punës "Projeksioni i buxhetit".