Jūs droši vien esat iepazinies ar VBA MsgBox funkciju. Funkcija MsgBox, kas pieņem tālāk norādītos argumentus, ir ērta informācijas parādīšanai un vienkāršas lietotāja ievades iegūšanai. Tas var iegūt lietotāja ievadi, jo tā ir funkcija. Funkcija, kā jūs droši vien zināt, atgriež vērtību. Funkcijas MsgBox gadījumā tā izmanto dialoglodziņu, lai iegūtu vērtību, ko tā atgriež. Turpiniet lasīt, lai precīzi redzētu, kā tas darbojas.
Arguments |
Ko tas ietekmē |
Pamudināt |
Ziņojuma lodziņā tiek parādīts teksts Excel |
Pogas |
Skaitlis, kas norāda, kuras pogas (kopā ar ikonu) tiek
rādītas ziņojuma lodziņā (neobligāti) |
Nosaukums |
Teksts, kas parādās ziņojuma lodziņa virsrakstjoslā
(neobligāti) |
Šeit ir vienkāršota funkcijas MsgBox sintakses versija:
MsgBox(prompt[, buttons][, title])
Tiek parādīts vienkāršs ziņojumu lodziņš
Funkciju MsgBox var izmantot divos veidos:
-
Lai vienkārši parādītu ziņojumu lietotājam: Šajā gadījumā jums ir vienalga par funkcijas atgriezto rezultātu.
-
Lai saņemtu atbildi no lietotāja: Šajā gadījumā jums rūp funkcijas atgrieztais rezultāts. Rezultāts ir atkarīgs no pogas, uz kuras lietotājs noklikšķina.
Ja izmantojat funkciju MsgBox vienu pašu, neiekļaujiet argumentiem iekavas. Šis piemērs vienkārši parāda ziņojumu un neatgriež rezultātu. Kad tiek parādīts ziņojums, kods apstājas, līdz lietotājs noklikšķina uz Labi.
Sub MsgBoxDemo()
MsgBox "Noklikšķiniet uz Labi, lai sāktu drukāšanu."
Loksnes (“Rezultāti”). Izdrukāšana
Beigu apakš
Skatieties tālāk, lai redzētu, kā izskatās šis ziņojumu lodziņš. Šajā gadījumā drukāšana sākas, kad lietotājs noklikšķina uz Labi. Vai ievērojat, ka nav iespējams atcelt drukāšanu? Turpiniet lasīt, lai uzzinātu, kā to novērst.
Vienkāršs ziņojumu lodziņš.
Atbildes saņemšana no ziņojuma lodziņa
Ja tiek parādīts ziņojumu lodziņš, kurā ir vairāk nekā tikai poga Labi, iespējams, vēlēsities zināt, uz kuras pogas lietotājs noklikšķina. Tev ir paveicies. Funkcija MsgBox var atgriezt vērtību, kas norāda, kura poga ir noklikšķināta. Funkcijas MsgBox rezultātu var piešķirt mainīgajam.
Šajā kodā tiek izmantotas dažas iebūvētās konstantes, kas atvieglo darbu ar MsgBox atgrieztajām vērtībām:
Sub GetAnswer()
Dim Ans As Long
Ans = MsgBox ("Sākt drukāt?", vbYesNo)
Atlasiet Case Ans
Lieta vbJā
ActiveSheet.PrintOut
Lieta vbNr
MsgBox “Drukāšana atcelta”
Beigu atlase
Beigu apakš
Pastāvīgi |
Vērtība |
Ko tas dara |
vbOKOnly |
0 |
Parāda tikai pogu OK. |
vbOKAtcelt |
1 |
Parāda pogas Labi un Atcelt. |
vbAbortRetryIgnore |
2 |
Parāda pogas Pārtraukt, Mēģināt vēlreiz un Ignorēt. |
vbYesNoCancel |
3 |
Parāda pogas Jā, Nē un Atcelt. |
vbJāNē |
4 |
Parāda pogas Jā un Nē. |
vbRetryCancel |
5 |
Parāda pogas Atkārtot un Atcelt. |
vbKritisks |
16 |
Parāda kritiskā ziņojuma ikonu. |
vbJautājums |
32 |
Parāda brīdinājuma vaicājuma ikonu. |
vbIzsaukums |
48 |
Parāda brīdinājuma ziņojuma ikonu. |
vbInformācija |
64 |
Parāda informācijas ziņojuma ikonu. |
vbDefaultButton1 |
0 |
Pirmā poga ir noklusējuma poga. |
vbDefaultButton2 |
256 |
Otrā poga ir noklusējuma poga. |
vbDefaultButton3 |
512 |
Trešā poga ir noklusējuma poga. |
vbDefaultButton4 |
768 |
Ceturtā poga ir noklusējuma poga. |
Pārbaudiet, kā tas izskatās. Veicot šo procedūru, mainīgajam Ans tiek piešķirta vērtība vbYes vai vbNo atkarībā no tā, uz kuras pogas lietotājs noklikšķina. Paziņojumā Select Case tiek izmantota vērtība Ans, lai noteiktu, kura darbība kodam jāveic.
Vienkāršs ziņojumu lodziņš ar divām pogām.
Varat arī izmantot funkcijas MsgBox rezultātu, neizmantojot mainīgo, kā parādīts šajā piemērā:
Sub GetAnswer2()
Ja MsgBox(“Sākt drukāšanu?”, vbYesNo) = vbYes Tad
' ...[kods, ja tiek noklikšķināts uz Jā]…
Citādi
' ...[kods, ja netiek noklikšķināts uz Jā]…
Beigas Ja
Beigu apakš