Giúp fix lỗi vba (1 người xem)

Liên hệ QC

Người dùng đang xem chủ đề này

hungnguyen1011

Thành viên mới
Tham gia
21/5/16
Bài viết
6
Được thích
0
Hi mọi người,
như tiêu đề giúp em fix lỗi mấy dòng code.

Option Explicit


Sub HighOrLow()


Dim name As String
Dim balance As Long
Dim Cards
Dim Bet
Dim HiLo As String




name = InputBox("Please enter your name:")
MsgBox ("Hi " & name & " Welcome to High and Low game")
balance = 100

If name = vbNullString Then Exit Sub
Cards = Array("Ace", 2, 3, 4, 5, 6, 7, 8, 9, 10, "Jack", "Queen", "King")

Call GetBet((name), (balance))
Call GetHighOrLow((name), (balance), (Bet), (Cards))

End Sub


Function GetBet(name As String, balance As Long)
Dim Bet As Integer


Bet = Application.InputBox(name & ", your current balance is $" & balance & "." & vbNewLine & "How much do you want to bet?")
MsgBox ("So you want to bet: " & Bet & "$")


If Bet = False Then Exit Function

If Bet <> Int(Bet) Or Bet < 1 Or Bet > balance Then
MsgBox (name & ", you must enter a whole number between 1 and " & balance & ".")
Call GetBet(name, balance)
End If



End Function


Function GetHighOrLow(name As String, balance As Long, Bet As Integer, Cards)
Dim HiLo As String
Dim ComCard As String
Dim RanCard(1 To 2) As Integer

Randomize
RanCard(1) = Int(13 * Rnd + 1)
RanCard(2) = Int(13 * Rnd + 1)

HiLo = InputBox(name & ", your card is: " & RanCard(1) & vbNewLine & "Do you think the computer's card is higher [H] or lower [L]?")

If Not UCase(HiLo) Like "[HL]" Then
MsgBox (name & ", you must enter [H] for higher or [L] for lower.")
Call GetHighOrLow(name, balance, Bet, Cards)
End If

If HiLo = vbNullString Then Exit Function

ComCard = (vbNewLine & "The computer's card is: " & Application.Index(Cards, RanCard(2)))

Select Case UCase(HiLo)
Case "H"
Select Case True
Case RanCard(2) > RanCard(1)
MsgBox "That's correct, " & name & "." & ComCard, vbInformation, "Result" & balance = balance + Bet
Case RanCard(2) < RanCard(1)
MsgBox "That's incorrect, " & name & "." & ComCard, vbInformation, "Result" & balance = balance - Bet
Case Else
MsgBox "It's a tie, " & name & "." & ComCard, vbInformation, "Result"
End Select
Case "L"
Select Case True
Case RanCard(2) < RanCard(1)
MsgBox "That's correct, " & name & "." & ComCard, vbInformation, "Result" & balance = balance + Bet
Case RanCard(2) > RanCard(1)
MsgBox "That's incorrect, " & name & "." & ComCard, vbInformation, "Result" & balance = balance - Bet
Case Else
MsgBox "It's a tie, " & name & "." & ComCard, vbInformation, "Result"
End Select
End Select


If balance > 0 Then
Call GetBet(name, balance)
Else
MsgBox (name & ", your balance is $0." & "Thanks for playing this game" & " see ya")
End If
End Function
 

File đính kèm

PHP:
 Option Explicit
Sub HighOrLow()
 Dim Name As String, HiLo As String
 Dim Cards, Bet, Balance As Long
 
 Name = InputBox("Please enter your name:")
 MsgBox ("Hi " & Name & " Welcome to High and Low game")
 Balance = 100  '?'
 If Name = vbNullString Then Exit Sub
 Cards = Array("Ace", 2, 3, 4, 5, 6, 7, 8, 9, 10, "Jack", "Queen", "King")
 Call GetBet((Name), (Balance))
 Call GetHighOrLow((Name), (Balance), (Bet), (Cards))
End Sub
Mã:
Function GetBet(Name As String, Balance As Long)
 Dim Bet As Integer
 Bet = Application.InputBox(Name & ", your current balance is $" & Balance & "." & vbNewLine & "How much do you want to bet?")
 MsgBox ("So you want to bet: " & Bet & "$")
 If Bet = False Then Exit Function
 If Bet <> Int(Bet) Or Bet < 1 Or Bet > Balance Then
    MsgBox (Name & ", you must enter a whole number between 1 and " & Balance & ".")
    Call GetBet(Name, Balance)
 End If
End Function
PHP:
Function GetHighOrLow(Name As String, Balance As Long, Bet As Integer, Cards)
 Dim HiLo As String, ComCard As String
 Dim RanCard(1 To 2) As Integer
 Randomize
 RanCard(1) = Int(13 * Rnd + 1)
 RanCard(2) = Int(13 * Rnd + 1)
 HiLo = InputBox(Name & ", your card is: " & RanCard(1) & vbNewLine & "Do you think the computer's card is higher [H] or lower [L]?")
 If Not UCase(HiLo) Like "[HL]" Then
    MsgBox (Name & ", you must enter [H] for higher or [L] for lower.")
    Call GetHighOrLow(Name, Balance, Bet, Cards)
 End If
 If HiLo = vbNullString Then Exit Function
 ComCard = (vbNewLine & "The computer's card is: " & Application.Index(Cards, RanCard(2)))
 Select Case UCase(HiLo)
 Case "H"
    If RanCard(2) > RanCard(1) Then     '*'
        MsgBox "That's correct, " & Name & "." & ComCard, vbInformation, "Result" & Str(Balance + Bet)           '*'
    ElseIf RanCard(2) < RanCard(1) Then
        MsgBox "That's incorrect, " & Name & "." & ComCard, vbInformation, "Result" & Str(Balance - Bet)
    Else
        MsgBox "It's a tie, " & Name & "." & ComCard, vbInformation, "Result"
    End If
 Case "L"
    If RanCard(2) < RanCard(1) Then
        MsgBox "That's correct, " & Name & "." & ComCard, vbInformation, "Result" & Str(Balance + Bet)
    ElseIf RanCard(2) > RanCard(1) Then
        MsgBox "That's incorrect, " & Name & "." & ComCard, vbInformation, "Result" & Str(Balance - Bet)
    Else
        MsgBox "It's a tie, " & Name & "." & ComCard, vbInformation, "Result"
    End If
End Select
If Balance > 0 Then
    Call GetBet(Name, Balance)
Else
    MsgBox (Name & ", your balance is $0." & "Thanks for playing this game" & " see ya")
End If
End Function
 
Upvote 0
Hi thanks anh chanhTQ đã giúp cái balance em muốn nó tăng lên khi thắng và giảm khi thua. Hơn nữa mình chỉ đoán được có vài lần là bị văng. Anh giúp em fix lỗi đó với
 
Upvote 0
Mã:
 Option Explicit
 Const Diem = 98
 Dim Bet As Integer
Sub HighOrLow()
 Dim Name As String, HiLo As String
 Dim Cards, Balance As Long
 
 Name = InputBox("Please enter your name:")
 MsgBox ("Hi " & Name & " Welcome to High and Low game")
 Balance = Diem \ 2 '?'
 If Name = vbNullString Then Exit Sub
 Cards = Array("Ace", 2, 3, 4, 5, 6, 7, 8, 9, 10, "Jack", "Queen", "King")
 Call GetBet((Name), (Balance))
 Call GetHighOrLow((Name), (Balance), (Bet), (Cards))
End Sub
PHP:
Function GetHighOrLow(Name As String, Balance As Long, Bet As Integer, Cards)
 Dim HiLo As String, ComCard As String
 Dim RanCard(1 To 2) As Integer
 Randomize
 RanCard(1) = Int(13 * Rnd + 1)
 RanCard(2) = Int(13 * Rnd + 1)
 HiLo = InputBox(Name & ", your card is: " & RanCard(1) & vbNewLine & "Do you think the computer's card is higher [H] or lower [L]?")
 If Not UCase(HiLo) Like "[HL]" Then
    If Len(HiLo) > 2 Then Exit Function
    MsgBox (Name & ", you must enter [H] for higher or [L] for lower.")
    Call GetHighOrLow(Name, Balance, Bet, Cards)
 End If
 If HiLo = vbNullString Then Exit Function
 ComCard = (vbNewLine & "The computer's card is: " & Application.Index(Cards, RanCard(2)))
 Select Case UCase(HiLo)
 Case "H"
    If RanCard(2) > RanCard(1) Then
        Bet = Bet + RanCard(2) - RanCard(1)
        MsgBox "That's correct, " & Name & "." & ComCard, vbInformation, "Result" & Str(Balance + Bet)
    ElseIf RanCard(2) < RanCard(1) Then
        Bet = Bet - RanCard(2) + RanCard(1)
        MsgBox "That's incorrect, " & Name & "." & ComCard, vbInformation, "Result" & Str(Balance - Bet)
    Else
        MsgBox "It's a tie, " & Name & "." & ComCard, vbInformation, "Result"
    End If
 Case "L"
    If RanCard(2) < RanCard(1) Then
        Bet = Bet - RanCard(2) + RanCard(1)
        MsgBox "That's correct, " & Name & "." & ComCard, vbInformation, "Result" & Str(Balance + Bet)
    ElseIf RanCard(2) > RanCard(1) Then
        Bet = Bet + RanCard(2) - RanCard(1)
        MsgBox "That's incorrect, " & Name & "." & ComCard, vbInformation, "Result" & Str(Balance - Bet)
    Else
        MsgBox "It's a tie, " & Name & "." & ComCard, vbInformation, "Result"
    End If
End Select
If Bet > 0 Then
    Call GetHighOrLow((Name), (Balance), (Bet), (Cards))
Else
    MsgBox (Name & ", your balance is $0." & "Thanks for playing this game" & " see ya")
End If
End Function
Mã:
Function GetBet(Name As String, Balance As Long)
 Bet = Application.InputBox(Name & ", your current balance is $" & Balance & "." & vbNewLine & "How much do you want to bet?")
 MsgBox ("So you want to bet: " & Bet & "$")
 If Bet = False Then Exit Function
 If Bet < 1 Or Bet > Balance Then
    MsgBox (Name & ", you must enter a whole number between 1 and " & Balance & ".")
    Call GetBet(Name, Balance)
 End If
End Function
 
Upvote 0
Thanks HYen17 đã giúp nhưng mà nó vẫn không cộng hay trừ khi thắng và thua hơn nữa nó chạy không kết thúc.
 
Upvote 0
Thanks HYen17 đã giúp nhưng mà (2) nó vẫn không cộng hay trừ khi thắng và thua; (1) hơn nữa nó chạy không kết thúc.

(1) Khi chán chới & muốn thoát thì nhập hơn 2 kí tự hay kí số vô hộp thoại, VD như "GPE.COM"

(2) Nó có cọng hay trừ mà; Nhưng thua là rất khó thì fải!
 
Upvote 0
Thanks HYen17 đã giúp nhưng mà nó vẫn không cộng hay trừ khi thắng và thua hơn nữa nó chạy không kết thúc.
Nó vẫn không cộng hay trừ do trong sub HiorLow() có lệnh gọi
Call GetBet((name), (balance))
Call GetHighOrLow((name), (balance), (Bet), (Cards))
Lệnh 2 các tham số đặt trong ngoặc là ép VBA truyền tham số theo kiểu by value mặc dù hàm GetHiOrLow khai báo tham số theo kiểu by reference nên balance và bet không thay đổi. Do vậy bạn cần bỏ các dấu ngoặc bao quanh các tham số đi rồi dùng vòng lặp ở đây hoặc trong hàm GetHiOrLow để chơi nhiều lần.
Lệnh 1 bạn nên sửa thành
Bet=GetBet(...) để nhận giá trị cược đưa vào hàm GetHiOrLow.
Trong hàm GetBet ở cuối cũng cần có lệnh gán GetBet=Bet để lấy giá trị trả về.
Ngoài ra các lệnh dạng:
Mã:
[COLOR=#000000]MsgBox "That's correct, " & name & "." & ComCard, vbInformation, "Result" & balance = balance + Bet[/COLOR]

không đúng, cần sửa thành:
Mã:
balance=balance+bet
msgbox...
(balance+ hay - bet tùy theo mình đoán đúng hay sai)
 
Lần chỉnh sửa cuối:
Upvote 0
Thanks mấy anh Super Hero đã giúp em. Mặc dù đã làm theo chỉ dẫn nhưng vẫn không được chắc tại em chicken quá. Code em fix lại phía dưới nó vẫn không cộng và trừ. Ngay khúc " your current balance is: " no vẫn hiện 100 hoài mặc dù em cố fix lỗi đó. Em có gắn file phía dưới (nếu cần)






Option Explicit


Sub HighOrLow()


Dim name As String
Dim balance As Long
Dim Cards
Dim Bet As Long
Dim HiLo As String



name = InputBox("Please enter your name:")
MsgBox ("Hi " & name & " Welcome to High and Low game")
balance = 100

If name = vbNullString Then Exit Sub
Cards = Array("Ace", 2, 3, 4, 5, 6, 7, 8, 9, 10, "Jack", "Queen", "King")

Call GetBet(name, balance)
Call GetHighOrLow(name, balance, Bet, Cards)

End Sub


Function GetBet(name As String, balance As Long)
Dim Bet As Integer


Bet = Application.InputBox(name & ", your current balance is $" & balance & "." & vbNewLine & "How much do you want to bet?")
MsgBox ("So you want to bet: " & Bet & "$")


If Bet = False Then Exit Function

If Bet <> Int(Bet) Or Bet < 1 Or Bet > balance Then
MsgBox (name & ", you must enter a whole number between 1 and " & balance & ".")
Bet = GetBet(name, balance)
End If


End Function


Function GetHighOrLow(name As String, balance As Long, Bet As Long, Cards)
Dim HiLo As String
Dim ComCard As String
Dim RanCard(1 To 2) As Integer

Randomize
RanCard(1) = Int(13 * Rnd + 1)
RanCard(2) = Int(13 * Rnd + 1)

HiLo = InputBox(name & ", your card is: " & RanCard(1) & vbNewLine & "Do you think the computer's card is higher [H] or lower [L]?")

If Not UCase(HiLo) Like "[HL]" Then
MsgBox (name & ", you must enter [H] for higher or [L] for lower.")
Call GetHighOrLow(name, balance, Bet, Cards)
End If

If HiLo = vbNullString Then Exit Function

ComCard = (vbNewLine & "The computer's card is: " & Application.Index(Cards, RanCard(2)))

Select Case UCase(HiLo)
Case "H"
Select Case True
Case RanCard(2) > RanCard(1)
MsgBox "That's correct, " & name & "." & ComCard
balance = balance + Bet
MsgBox ("New balance: " & balance)
Case RanCard(2) < RanCard(1)
MsgBox "That's incorrect, " & name & "." & ComCard, vbInformation, "Result"
balance = balance - Bet
MsgBox ("New balance: " & balance)
Case Else
MsgBox "It's a tie, " & name & "." & ComCard, vbInformation, "Result"
End Select
Case "L"
Select Case True
Case RanCard(2) < RanCard(1)
MsgBox "That's correct, " & name & "." & ComCard, vbInformation, "Result"
balance = balance + Bet
MsgBox ("New balance: " & balance)
Case RanCard(2) > RanCard(1)
MsgBox "That's incorrect, " & name & "." & ComCard, vbInformation, "Result"
balance = balance - Bet
MsgBox ("New balance: " & balance)
Case Else
MsgBox "It's a tie, " & name & "." & ComCard, vbInformation, "Result"
End Select
End Select


If balance > 0 Then
Call GetBet(name, balance)
Else
MsgBox (name & ", your balance is $0." & "Thanks for playing this game" & " see ya")
End If
End Function
 

File đính kèm

Lần chỉnh sửa cuối:
Upvote 0
Trong hàm GetBet cần lệnh gán GetBet=Bet, trong hàm HiOrLow và lệnh gần cuối ở GetHiOrLow thì cần Bet=GetBet, bạn làm ngược. Ngoài ra cần vòng lặp ở HiOrLow hoặc GetHiOrLow để chơi tiếp khi balance vẫn còn. Còn vấn đề gì nữa bạn chịu khó duyệt từng lệnh xem sao. Mình đọc code trên điện thoại nên không thử được.
 
Lần chỉnh sửa cuối:
Upvote 0
Hi mấy anh, mấy dòng code đều fix hết nhưng hình như nó vẫn chơi khi balance = 0.

Mã:
Option Explicit
    Dim Bet As Integer
Sub HighOrLow()
    Dim Name As String, HiLo As String
    Dim Cards, Balance As Long
 
    Name = InputBox("Please enter your name:")
    MsgBox ("Hi " & Name & ", welcome to High and Low game")
    Balance = 100
    If Name = vbNullString Then Exit Sub
    Cards = Array(2, 3, 4, 5, 6, 7, 8, 9, 10, "Jack", "Queen", "King", "Ace")


    Call GetBet(Name, Balance)
    Call GetHighOrLow(Name, Balance, Bet, Cards)
End Sub


Function GetBet(Name As String, Balance As Long)
    Bet = Application.InputBox(Name & ", your current balance is $" & Balance & "." & vbNewLine & "How much do you want to bet?")
    MsgBox ("So you want to bet: " & Bet & "$")
    
    If Bet = False Then Exit Function
    
    If Bet <> Int(Bet) Or Bet < 1 Or Bet > Balance Then
        MsgBox (Name & ", you must enter a whole number between 1 and " & Balance & ".")
        Bet = GetBet(Name, Balance)
    End If
    
End Function


Function GetHighOrLow(Name As String, Balance As Long, Bet As Integer, Cards)
    Dim HiLo As String, ComCard As String
    Dim RanCard(1 To 2) As Integer
    Dim continues As Integer
    
 
    Randomize
    RanCard(1) = Int(13 * Rnd + 1)
    RanCard(2) = Int(13 * Rnd + 1)
    continues = 1
    
Do Until Balance = 0
    HiLo = InputBox(Name & ", your card is: " & Application.Index(Cards, RanCard(1)) & vbNewLine & "Do you think the computer's card is higher [H] or lower [L]?")
    If Not UCase(HiLo) Like "[HL]" Then
        If Len(HiLo) > 2 Then Exit Function
            MsgBox (Name & ", you must enter [H] for higher or [L] for lower.")
        Call GetHighOrLow(Name, Balance, Bet, Cards)
    End If
    
    If HiLo = vbNullString Then Exit Function
    ComCard = (vbNewLine & "The computer's card is: " & Application.Index(Cards, RanCard(2)))
    


    Select Case UCase(HiLo)
    Case "H"
 
    If RanCard(2) > RanCard(1) Then
        Balance = Balance + Bet
        MsgBox "Your balance is: " & Str(Balance) & vbNewLine & "That's correct, " & Name & "." & ComCard, vbInformation, "Result"
    ElseIf RanCard(2) < RanCard(1) Then
        Balance = Balance - Bet
        MsgBox "Your balance is: " & Str(Balance) & vbNewLine & "That's incorrect, " & Name & "." & ComCard, vbInformation, "Result"
    Else
        MsgBox "It's a tie, " & Name & "." & ComCard, vbInformation, "Result"
    End If




    Case "L"
 
    If RanCard(2) < RanCard(1) Then
        Balance = Balance + Bet
        MsgBox "Your balance is: " & Str(Balance) & vbNewLine & "That's correct, " & Name & "." & ComCard, vbInformation, "Result"
    ElseIf RanCard(2) > RanCard(1) Then
        Balance = Balance - Bet
        MsgBox "Your balance is: " & Str(Balance) & vbNewLine & "That's incorrect, " & Name & "." & ComCard, vbInformation, "Result"
    Else
        MsgBox "It's a tie, " & Name & "." & ComCard, vbInformation, "Result"
    End If
        
End Select


If continues = 1 Then
    continues = GetHighOrLow(Name, Balance, Bet, Cards)
Else
    continues = InputBox("Do you want to continues?" & vbNewLine & "Press 1 to Continues this game and 2 to Quit ")
    MsgBox ("Thanks for playing this game & vbNewLine & HAVE A GOOD DAY")
End If


If Bet > 0 Then
    Bet = GetBet(Name, Balance)


Else
    MsgBox (Name & ", your balance is $0." & "Thanks for playing this game" & vbNewLine & " SEE YA")
End If


Loop


End Function
 
Lần chỉnh sửa cuối:
Upvote 0
- Code của bạn như vậy khi ta chọn đúng thì game sẽ không bao giờ dừng lại vì bạn đặt vòng lặp do while ... loop có thể không đúng vị trí (mình nói là "có thể" vì có thể đây là ý bạn). Với code như vậy thì sau mỗi lần lặp bet và cards không đổi (sao lại chơi mãi 2 quân bài như vậy), chỉ có balance thay đổi nên nếu balance tăng thì nó sẽ tăng mãi đến hết giới hạn của số long. Bạn bấm F8 vài lần sẽ thấy ngay.
- Theo mình có thể sửa thành: bỏ vòng lặp ở GetHiOrLow đi, thay bằng vòng lặp ở cuối sub HiOrLow, điều kiện là balance>0. Khi đó mỗi lần lặp là 1 lần chơi, biến balance sẽ thay đổi sau mỗi lần chơi, người chơi sẽ chọn lại bet và H hay L, game sẽ chọn lại quân bài ngẫu nhiên, chơi đến khi balance<=0 hoặc người chơi nhập ký tự sai.
- Hàm Getbet của bạn có lệnh Bet=GetBet(...) tuy trong trường hợp này vẫn chạy đúng nhưng do hàm GetBet không trả về gì cả nên có thể sửa thành Call GetBet(...). Nếu có thể, bạn nên tránh dùng cách gọi hàm đệ quy, hàm getbet có thể viết lại không dùng đệ quy như sau (mình viết lại hàm này trong trường hợp Bet là biến toàn cục mặc dù mình thích dùng nó là biến cục bộ hơn):
Mã:
Function GetBet(Name As String, Balance As Long)
    Do
        Bet = InputBox(Name & ", your current balance is $" & Balance & "." & vbNewLine & "How much do you want to bet?")
        If Bet = Int(Bet) And Bet > 0 And Bet <= Balance Then Exit Do
        MsgBox (Name & ", you must enter a whole number between 1 and " & Balance & ".")
    Loop
    MsgBox ("So you want to bet: " & Bet & "$")
End Function
 
Upvote 0
Hi Master Hau151978,
Em có làm theo anh từng bước nhưng nó không cho mình Bet chỉ cho chạy function GetHighOrLow thôi hơn nữa khi balance = 0 nó không chạy cái continues khi mình muốn nghỉ hay chơi tiếp
Mã:
Option Explicit
    Dim Bet As Integer
Sub HighOrLow()
    Dim Name As String, HiLo As String
    Dim Cards, Balance As Long
 
    Name = InputBox("Please enter your name:")
    MsgBox ("Hi " & Name & ", welcome to High and Low game")
    Balance = 100
    If Name = vbNullString Then Exit Sub
    Cards = Array(2, 3, 4, 5, 6, 7, 8, 9, 10, "Jack", "Queen", "King", "Ace")
    
    Do While Balance > 0
        Call GetBet(Name, Balance)
        Call GetHighOrLow(Name, Balance, Bet, Cards)
    Loop
End Sub


Function GetBet(Name As String, Balance As Long)
    Do
        Bet = InputBox(Name & ", your current balance is $" & Balance & "." & vbNewLine & "How much do you want to bet?")
        If Bet = Int(Bet) And Bet > 0 And Bet <= Balance Then Exit Do
        MsgBox (Name & ", you must enter a whole number between 1 and " & Balance & ".")
    Loop
    MsgBox ("So you want to bet: " & Bet & "$")
End Function


Function GetHighOrLow(Name As String, Balance As Long, Bet As Integer, Cards)
    Dim HiLo As String, ComCard As String
    Dim RanCard(1 To 2) As Integer
    Dim continues As Integer
    
 
    Randomize
    RanCard(1) = Int(13 * Rnd + 1)
    RanCard(2) = Int(13 * Rnd + 1)
    continues = 1
    
    HiLo = InputBox(Name & ", your card is: " & Application.Index(Cards, RanCard(1)) & vbNewLine & "Do you think the computer's card is higher [H] or lower [L]?")
    If Not UCase(HiLo) Like "[HL]" Then
        If Len(HiLo) > 2 Then Exit Function
            MsgBox (Name & ", you must enter [H] for higher or [L] for lower.")
        Call GetHighOrLow(Name, Balance, Bet, Cards)
    End If
    
    If HiLo = vbNullString Then Exit Function
    ComCard = (vbNewLine & "The computer's card is: " & Application.Index(Cards, RanCard(2)))
    


    Select Case UCase(HiLo)
    Case "H"
 
    If RanCard(2) > RanCard(1) Then
        Balance = Balance + Bet
        MsgBox "Your balance is: " & Str(Balance) & vbNewLine & "That's correct, " & Name & "." & ComCard, vbInformation, "Result"
    ElseIf RanCard(2) < RanCard(1) Then
        Balance = Balance - Bet
        MsgBox "Your balance is: " & Str(Balance) & vbNewLine & "That's incorrect, " & Name & "." & ComCard, vbInformation, "Result"
    Else
        MsgBox "It's a tie, " & Name & "." & ComCard, vbInformation, "Result"
    End If




    Case "L"
 
    If RanCard(2) < RanCard(1) Then
        Balance = Balance + Bet
        MsgBox "Your balance is: " & Str(Balance) & vbNewLine & "That's correct, " & Name & "." & ComCard, vbInformation, "Result"
    ElseIf RanCard(2) > RanCard(1) Then
        Balance = Balance - Bet
        MsgBox "Your balance is: " & Str(Balance) & vbNewLine & "That's incorrect, " & Name & "." & ComCard, vbInformation, "Result"
    Else
        MsgBox "It's a tie, " & Name & "." & ComCard, vbInformation, "Result"
    End If
        
End Select


continues = InputBox("Do you want to continues?" & vbNewLine & "Press 1 to Continues this game and 2 to Quit ")


    If continues = 1 Then
        continues = GetHighOrLow(Name, Balance, Bet, Cards)
    ElseIf continues = 2 Then
        MsgBox ("Thanks for playing this game" & vbNewLine & "HAVE A GOOD DAY")
    End If


    If Bet > 0 Then
        Bet = GetBet(Name, Balance)
        
    Else
        MsgBox (Name & ", your balance is $0." & "Thanks for playing this game" & vbNewLine & " SEE YA")
        Exit Function
    End If




End Function
 
Upvote 0
Hi Master Hau151978,
Em có làm theo anh ...

Ha ha, Master Hau!
Nói tiếng Tây bồi thể nào cũng có ngày như thế này.

Trích Wikipedia: (https://en.wikipedia.org/wiki/Master_(form_of_address))

After its replacement in common speech by Mister, Master was retained as a form of address only for boys who have not yet entered society. By the late 19th century, etiquette dictated that men be addressed as Mister, and boys as Master.


Chú: Alfred gọi Bruce Wayne (Batman) là 'Master Bruce' bởi vì ông nuôi Bruce từ nhỏ.
 
Upvote 0
Web KT

Bài viết mới nhất

Back
Top Bottom