PDA

View Full Version : مبتدی: نمایش غیر منتظره عدد یک در این کد



javady_joon
جمعه 18 مهر 1393, 09:55 صبح
Private Sub Command_Click()
Dim str As String
str = MsgBox(" your name is javad", vbOKCancel, "Name")
MsgBox (str)
End Sub




من این کد رو نوشتم ولی نمیدونم چرا بعد از اینکه msgbox رشته str رو چاپ کرد
در ادامه اش 1 رو هم نمایش میده
ممنون میشم کمک کنید

meys34
جمعه 18 مهر 1393, 10:52 صبح
خروجی تابع MsgBox یک عدد هست...
vbAbort=3
vbCancel=2
vbIgnore=5
vbNo=7
vbOK=1
vbRetry=4
vbYes=6

احتمالا شما منظورتون تابع InputBox بوده...

Private Sub Command1_Click()
Dim str As String
str = InputBox("Name ra vared konid", "Name", "javad")
MsgBox (str)
End Sub

Mori Bone
جمعه 18 مهر 1393, 10:55 صبح
وقتی شما میخواهی مقدار رو از نوع msgbox در نظر می گیری یا true و یا false رو برمی گردونه. که در این صورت شما باید از نوع Integer در نظر بگیری.

dim msgresult%
msgresult% = msgbox("salam");
if msgresult% = 1 then
....
end if


یا


if vbOk = msgbox("salam") then
...
end if

ahmad abdoli
شنبه 19 مهر 1393, 19:03 عصر
دوست عزیز شما رشته str به چه کارتون میاد؟

وقتی شما msgbox رو به این رشته نسبت می دید(str = MsgBox(" your name is javad", vbOKCancel, "Name") چون خروجی تابع msgbox یه عدد هست در نتیجه

مقدار قرار گرفته در متغیر str برار اون عدد بازگشتی از msgbox خواهد بود که در اینجا چون ok کلیک می شه عدد یک هست.

شما هم توی خط بعد این عدد رو در یک msgbox به نمایش دادید. غیر منتظره نیست.