VBA pogu argumenta elastība ļauj ērti pielāgot Excel ziņojumu lodziņus. Varat izvēlēties, kuras pogas parādīt, noteikt, vai tiek parādīta ikona, un izlemt, kura poga ir noklusējuma poga (noklusējuma poga tiek “noklikšķināta”, ja lietotājs nospiež Enter).
Pogu argumentam varat izmantot iebūvētās konstantes. Ja vēlaties, varat izmantot vērtību, nevis konstanti (taču iebūvēto konstantu izmantošana ir daudz vienkāršāka).
Lai kā argumentu izmantotu vairākas no šīm konstantēm, vienkārši savienojiet tās ar operatoru +. Piemēram, lai parādītu ziņojuma lodziņu ar pogām Jā un Nē un izsaukuma ikonu, izmantojiet šo izteiksmi kā otro MsgBox argumentu:
vbYesNo + vbIzsaukuma zīme
Vai arī, ja vēlaties padarīt kodu mazāk saprotamu, izmantojiet vērtību 52 (tas ir, 4 + 48).
Nākamajā piemērā tiek izmantota konstantu kombinācija, lai parādītu ziņojuma lodziņu ar pogu Jā un pogu Nē (vbYesNo), kā arī jautājuma zīmes ikonu (vbQuestion). Konstante vbDefaultButton2 apzīmē otro pogu (Nē) kā noklusējuma pogu, tas ir, pogu, uz kuras tiek noklikšķināts, ja lietotājs nospiež Enter. Vienkāršības labad šīs konstantes tiek piešķirtas mainīgajam Config un pēc tam izmantojiet Config kā otro argumentu funkcijā MsgBox:
Sub GetAnswer3()
Dim Config As Long
Dim Ans kā vesels skaitlis
Config = vbYesNo + vbQuestion + vbDefaultButton2
Ans = MsgBox (“Apstrādāt ikmēneša pārskatu?”, Konfigurācija)
Ja Ans = vbYes, tad RunReport
Beigu apakš
Pārbaudiet ziņojuma lodziņu, ko programma Excel parāda, izpildot procedūru GetAnswer3. Ja lietotājs noklikšķina uz pogas Jā, rutīna izpilda procedūru ar nosaukumu RunReport. Ja lietotājs noklikšķina uz pogas Nē (vai nospiež Enter), rutīna beidzas bez darbības. Tā kā funkcijā MsgBox nosaukuma arguments tika izlaists, programma Excel izmanto noklusējuma nosaukumu Microsoft Excel.
Funkcijas MsgBox pogu arguments nosaka, kas tiek rādīts ziņojuma lodziņā.
Šajā rutīnā ir sniegts vēl viens funkcijas MsgBox izmantošanas piemērs:
Sub GetAnswer4()
Dim Msg As String, Title As String
Dim Config kā vesels skaitlis, ans kā vesels skaitlis
Msg = "Vai vēlaties apstrādāt ikmēneša pārskatu?"
Msg = Msg & vbNewLine & vbNewLine
Msg = Ziņojums & "Apstrādājot ikmēneša atskaiti "
Msg = Ziņa un "ņem apmēram 15 minūtes. Tas "
Msg = Ziņojums & "ģenerēs 30 lappušu pārskatu par "
Msg = Ziņojums un "visi pašreizējie tirdzniecības biroji"
Msg = Ziņa un "mēnesis".
Nosaukums = "XYZ mārketinga uzņēmums"
Config = vbYesNo + vbQuestion
Ans = MsgBox (Ziņojums, konfigurācija, nosaukums)
Ja Ans = vbYes, tad RunReport
Beigu apakš
Šis piemērs parāda efektīvu veidu, kā ziņojuma lodziņā norādīt garāku ziņojumu. Mainīgais (Msg) un konkatenācijas operators (&) tiek izmantots, lai izveidotu ziņojumu virknē paziņojumu. Konstante vbNewLine ievieto rindiņas pārtraukuma rakstzīmi, kas sāk jaunu rindiņu (izmantojiet to divreiz, lai ievietotu tukšu rindiņu). Virsraksta arguments tiek izmantots, lai ziņojuma lodziņā parādītu citu nosaukumu. Šis ir ziņojuma lodziņš, ko programma Excel parāda, izpildot šo procedūru.
Šis dialoglodziņš, ko parāda funkcija MsgBox, parāda nosaukumu, ikonu un divas pogas.
Funkcijas MsgBox atgriešanas vērtībai varat izmantot konstantes (piemēram, vbYes un vbNo). Šeit ir dažas citas konstantes.
Pastāvīgi |
Vērtība |
Ko tas nozīmē |
vbOK |
1 |
Lietotājs noklikšķināja uz Labi. |
vbAtcelt |
2 |
Lietotājs noklikšķināja uz Atcelt. |
vbAbort |
3 |
Lietotājs noklikšķināja uz Pārtraukt. |
vbMēģiniet vēlreiz |
4 |
Lietotājs noklikšķināja uz Mēģināt vēlreiz. |
vb Ignorēt |
5 |
Lietotājs noklikšķināja uz Ignorēt. |
vbJā |
6 |
Lietotājs noklikšķināja uz Jā. |
vbNr |
7 |
Lietotājs noklikšķināja uz Nē. |
Un tas ir gandrīz viss, kas jums jāzina par MsgBox funkciju. Tomēr izmantojiet ziņojumu lodziņus piesardzīgi. Parasti nav nekāda iemesla rādīt ziņojumu lodziņus, kuriem nav nozīmes. Piemēram, cilvēki mēdz kļūt īgni, katru dienu redzot ziņojumu lodziņu ar uzrakstu Labrīt. Paldies, ka ielādējāt Budžeta prognozes darbgrāmatu.