不好意思  我的程式這樣寫  哪裡錯誤
目前我卡在if的條件他都會判斷成true
因為還在自己測試功能  還沒完成
Private Sub CB2_Click()
  For i = lastrow To 2 Step -1
  a = TB1.Text  'textbox
  b = Cells(i, "A")
   If a <> b Then
    nextrow = Cells(Rows.Count, 1).End(xlUp).Row + 1
    Cells(nextrow, "A") = TB1.Text
    Cells(nextrow, "B") = L1.Caption
    Range("A" & i).Activate
    un = msgbox("歡迎新勇者" + TB1.Text + "到來,系統再贈送您4次")
    ActiveCell.Offset(0, 1).Value = L1.Caption + 4
    Exit For
   Else
     L1.Caption = L1.Caption - 1
     Range("A" & i).Activate
     un = msgbox("歡迎勇者" + TB1.Text + "再次挑戰,您還能挑戰" + L1.Caption + "次")
End Sub
附圖
你這樣不大對吧,
不是應該先全部檢查過,
再作判斷嗎?
我不太懂您的意思  且我已經確定寫完了
只是那個a<>b會變成true  是為何
且我以下的寫法就可以
Private Sub TB1_Change()
    Sheets("玩家資料").Activate
    lastrow = ActiveSheet.UsedRange.Rows.Count + ActiveSheet.UsedRange.Rows(1).Row - 1
     For i = lastrow To 2 Step -1
      If Cells(i, "A") = TB1.Text Then
        Range("A" & i).Activate
        L1.Caption = Cells(i, "b")
      End If
     Next
End Sub
沒有寫過VBA,不過 a<>b (a不等於b) 這種條件很容易就會是true了吧~XDDD
猜測 a<>b 容易成立
是因為a跟b的型態問題XD
a = 1
b = "1"
一樣是a<>b唷
我比較想問的是為何要用EXCEL VBA寫這個... 把會計室的姊姊嗎?
從今天就開始學VBA!!((誤
如果還沒解決的話,
可以Mail給我幫你看一下,
henrychang0202@gmail.com
(閒人勿擾, 反正我每天都會刪個幾封廣告)
我已經自己測試並且解決了
  Sheets("玩家資料").Activate
  If L1.Caption = 0 Then
  un = msgbox("您沒投幣,請投幣再按開始遊戲")
  Exit Sub
  End If
  lastrow = ActiveSheet.UsedRange.Rows.Count + ActiveSheet.UsedRange.Rows(1).Row + 1
   For i = lastrow To 2 Step -1
      If Cells(i, "A") = TB1.Text Then
        Range("A" & i).Activate
        Exit For
      End If
    Next
  a = TB1.Value
  b = ActiveCell.Text
   If b <> a Then
    nextrow = Cells(Rows.Count, 1).End(xlUp).Row + 1
    Cells(nextrow, "A") = TB1.Text
    Cells(nextrow, "B") = L1.Caption
    Range("A" & i).Activate
    un = msgbox("歡迎新勇者" + TB1.Text + "到來,系統再贈送您4次")
    ActiveCell.Offset(0, 1).Value = L1.Caption + 4
    Else
     L1.Caption = L1.Caption - 1
     Range("A" & i).Activate
     un = msgbox("歡迎勇者" + TB1.Text + "再次挑戰,您還能挑戰" + L1.Caption + "次")
     Cells(i, "B") = L1.Caption
    End If
    Sheets("random").Activate
    randomA = (Rnd * 20 + 1) Mod 2
    Cells(2, "A") = randomA
   If Cells(2, "A") = 0 Then
   un = msgbox("您是奴隸牌獲勝一次系統贈送四次")
   Unload Me
   UF1.Show
   Else
   un = msgbox("您是國王牌獲勝一次系統贈送兩次")
   Unload Me
   UF2.Show
   End If
這樣就可以抓到
