Sveigjanleiki VBA hnappa röksemdafærslunnar gerir það auðvelt að sérsníða Excel skilaboðareitina þína. Þú getur valið hvaða hnappa á að birta, ákvarðað hvort tákn birtist og ákveðið hvaða hnappur er sjálfgefinn (smellt er á sjálfgefna hnappinn ef notandinn ýtir á Enter).
Þú getur notað innbyggða fasta fyrir hnappa rökin. Ef þú vilt geturðu notað gildið frekar en fasta (en það er miklu auðveldara að nota innbyggðu fastana).
Til að nota fleiri en einn af þessum föstum sem rök, tengdu þá bara við + rekstraraðila. Til dæmis, til að birta skilaboðareit með Já og Nei hnöppum og upphrópunartákni, notaðu eftirfarandi tjáningu sem önnur MsgBox rök:
vbYesNo + vb Upphrópun
Eða, ef þú vilt gera kóðann þinn óskiljanlegri, notaðu gildið 52 (það er 4 + 48).
Eftirfarandi dæmi notar blöndu af föstum til að birta skilaboðareit með Já hnapp og Nei hnapp (vbYesNo) auk spurningamerkistákn (vbQuestion). Fasti vbDefaultButton2 tilgreinir seinni hnappinn (Nei) sem sjálfgefinn hnapp - það er hnappinn sem smellt er á ef notandinn ýtir á Enter. Til einföldunar er þessum fastum úthlutað á Config breytuna og síðan er Config notað sem önnur rök í MsgBox fallinu:
Undir GetAnswer3()
Dim Config As Long
Dim Ans As Heiltala
Config = vbYesNo + vbQuestion + vbDefaultButton2
Ans = MsgBox(„Unnið mánaðarskýrsluna?”, Config)
Ef Ans = vbYes Þá RunReport
End Sub
Skoðaðu skilaboðareitinn sem Excel sýnir þegar þú framkvæmir GetAnswer3 aðferðina. Ef notandinn smellir á Já hnappinn framkvæmir venjan ferlið sem heitir RunReport. Ef notandinn smellir á Nei hnappinn (eða ýtir á Enter) lýkur venjan án aðgerða. Vegna þess að titilsrökum var sleppt í MsgBox fallinu notar Excel sjálfgefna titilinn, Microsoft Excel.

Hnapparrök MsgBox fallsins ákvarðar hvað birtist í skilaboðareitnum.
Eftirfarandi venja gefur annað dæmi um notkun MsgBox aðgerðarinnar:
Undir GetAnswer4()
Dimm skilaboð sem strengur, titill sem strengur
Dim Config Sem Heiltala, Ans Sem Heiltala
Msg = "Viltu vinna mánaðarskýrsluna?"
Msg = Msg & vbNewLine & vbNewLine
Msg = Msg & „Meðvinnsla mánaðarskýrslu mun“
Msg = Msg & “taktu um það bil 15 mínútur. Það "
Msg = Msg & “mun búa til 30 blaðsíðna skýrslu fyrir “
Msg = Msg & "allar söluskrifstofur fyrir núverandi"
Msg = Msg & "mánuður."
Titill = "XYZ markaðsfyrirtæki"
Config = vbYesNo + vbQuestion
Ans = MsgBox(Msg, Config, Titill)
Ef Ans = vbYes Þá RunReport
End Sub
Þetta dæmi sýnir skilvirka leið til að tilgreina lengri skilaboð í skilaboðareit. Breyta (Msg) og samtengingaraðgerð (&) eru notuð til að búa til skilaboðin í röð fullyrðinga. VbNewLine fastinn setur inn línuskilstaf sem byrjar nýja línu (notaðu hann tvisvar til að setja inn auða línu). Titilrökin eru notuð til að sýna annan titil í skilaboðareitnum. Hér er skilaboðakassi sem Excel sýnir þegar þú framkvæmir þessa aðferð.

Þessi valmynd, sýndur af MsgBox aðgerðinni, sýnir titil, tákn og tvo hnappa.
Þú getur notað fasta (eins og vbYes og vbNo) fyrir skilgildi MsgBox falls. Hér eru nokkrir aðrir fastar.
| Stöðugt |
Gildi |
Hvað það þýðir |
| vbOK |
1 |
Notandi smellti á OK. |
| vbHætta við |
2 |
Notandi smellti á Hætta við. |
| vbHætta |
3 |
Notandi smellti á Hætta við. |
| vbReyndu aftur |
4 |
Notandi smellti á Reyna aftur. |
| vbHunsa |
5 |
Notandi smellti á Hunsa. |
| vbJá |
6 |
Notandi smellti á Já. |
| vbNei |
7 |
Notandi smellti á Nei. |
Og það er nokkurn veginn allt sem þú þarft að vita um MsgBox aðgerðina. Notaðu skilaboðareitina þó með varúð. Það er yfirleitt engin ástæða til að birta skilaboðakassa sem þjóna engum tilgangi. Til dæmis hefur fólk tilhneigingu til að verða pirrað þegar það sér skilaboðakassa á hverjum degi sem á stendur Góðan daginn. Takk fyrir að hlaða upp fjárhagsáætlunarvinnubókinni.