返回列表 上一主題 發帖

如何將TextBox和編號分開?

如何將TextBox和編號分開?

本帖最後由 av8d 於 2011-9-8 08:19 編輯

For i = 2 To 7
"TextBox" & i=""
Next i
End Sub

以上做法會發生錯誤
是因為TextBox是物件嗎?

若TextBox2+TextBox3+++++TextBox7又該怎寫?

請問為什麼型態會不符合?(感謝GBKEE 大大解決了我的疑問)

本帖最後由 av8d 於 2011-9-7 23:50 編輯

cach.rar (34.33 KB)

請問為什麼型態會不符合?有沒有比較快點的作法?(例如:用迴圈)

TOP

回復 1# av8d
  1. BTO = Val(TextBox1)
  2. Bon = Val(TextBox2)
  3. Bte = Val(TextBox3)
  4. Bfy = Val(TextBox4)
  5. Boh = Val(TextBox5)
  6. Bfh = Val(TextBox6)
  7. Bot = Val(TextBox7)
  8. Ton = Val(TextBox8)
  9. Tte = Val(TextBox9)
  10. Tfy = Val(TextBox10)
  11. toh = Val(TextBox11)
  12. Tfh = Val(TextBox12)
  13. Tot = Val(TextBox13)

  14. ATO = BTO - (Ton + toh) / 10
  15. MsgBox ATO
複製代碼

TOP

回復 1# av8d
  1. For i = 2 To 7
  2.     Controls("TextBox" & i) = ""
  3. Next i
複製代碼

若TextBox2+TextBox3+++++TextBox7又該怎寫?
TextBox2+TextBox3+++++TextBox7->傳回字串
Val(TextBox2)+Val(TextBox3)+++++Val(TextBox7)->傳回數字

TOP

回復 2# GBKEE

Private Sub CommandButton1_Click()
For i = 2 To 4
    Controls("TextBox" & i) = ""
Next i
End Sub

    按下按鈕後出現沒有定義這個Sub或Function

TOP

回復 3# av8d
同性資的問題 請別再發一次新帖,浪費論壇資源.
控制項是有分別  1 Form 及 2 工作表
這裡是工作表的控制項, 由工具->控制工具箱 產生的
  1. Private Sub CommandButton1_Click()
  2.     For i = 2 To 4
  3.         工作表1.OLEObjects("TextBox" & i).Object.Value = ""
  4.     Next i
  5. End Sub
複製代碼

TOP

G大您好~我可否在詢問一下關於以下的改寫方式
n1 = Val(TextBox1)
n2= Val(TextBox2)
n3= Val(TextBox3)
若改寫成迴圈改怎麼寫?
以下兩個寫法都會出現錯誤.
For i = 1 To 3
    For j = 1 To 3
        "n" & j = 工作表1.OLEObjects("TextBox" & i).Object.Value
    Next j
Next i
-------------------------------------------------------
For i = 1 To 3
    For j = 1 To 3
        "n" & j = Controls("TextBox" & i).Value
    Next j
Next i

TOP

回復 7# av8d
  1. Option Explicit
  2. 'n1 = Val(TextBox1)
  3. 'n2 = Val(TextBox2)
  4. 'n3 = Val(TextBox3)
  5. Sub Ex()
  6.     'Dim N(1 To 3)   '也可以
  7.     Dim N()
  8.     i = 3
  9.     ReDim N(1 To 3)
  10.     For i = 1 To 3
  11.         N(i) = 工作表1.OLEObjects("TextBox" & i).Object.Value
  12.     Next
  13. End Sub
複製代碼

TOP

Option Explicit
Private Sub CommandButton2_Click()
    Dim N()
    i = 1
    ReDim N(1 To 3)
    For i = 1 To 3
        N(i) = 工作表1.OLEObjects("TextBox" & i).Object.Value
    Next
ATO = N3 + N2
MsgBox ATO


不知道為什麼 答案都是0


End Sub

TOP

回復 9# av8d
N是陣列
ATO = N(3) + N(2)

TOP

        靜思自在 : 口說一句好話,如口出蓮花;口說一句壞話如口吐毒蛇。
返回列表 上一主題