返回列表 上一主題 發帖

[發問] 如何設定

回復 2# acdx
  1. Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
  2. ob = Array(100, 125, 160, 200, 250, 315, 400, 500, 630, 800, 1000, 1250, 1600, 2000, 2500, 3150, 4000, 5000, 6300, 8000, 10000, 12500, 16000, 20000)
  3. Set dic = CreateObject("Scripting.Dictionary")
  4. For Each ky In ob
  5.    dic.Add ky, ky
  6. Next
  7. If dic.exists(Val(TextBox1)) = False Then MsgBox "輸入值錯誤"
  8. End Sub
複製代碼
學海無涯_不恥下問

TOP

本帖最後由 GBKEE 於 2013-9-4 12:26 編輯

回復 6# acdx
  1. Private Sub UserForm_Initialize()   'ExportResult(表單模組)
  2. Dim Ob()   '<-這Dim Ob 變數 只可以在 UserForm_Initialize程序中使用
  3. Ob = Array(100, 125, 160, 200, 250, 315, 400, 500, _
  4.             630, 800, 1000, 1250, 1600, 2000, 2500, 3150, _
  5.             4000, 5000, 6300, 8000, 10000, 12500, 16000, 20000)
  6. End Sub
複製代碼
  1. Option Explicit         'ExportResult(表單模組)
  2. Dim Ob(), Msg As Boolean  ' 這兩行程式碼 請放在 ExportResult(表單模組)的最上端
  3. (如此這Dim Ob 變數,ExportResult(表單模組)所有程式可乎叫的)
  4. Private Sub CommandButton2_Click()
  5. Unload Me
  6. ALtoolbox.Show
  7. End Sub
複製代碼
感恩的心......(在麻辣家族討論區.用心學習會有進步的)
但資源無限,後援有限,  一天1元的贊助,人人有能力.

TOP

回復 9# ML089
回復 10# GBKEE
明白了,又拿 Lookup 和 Index 比較一下,也是類似情形
    v1 = Application.Lookup(0, Array(1, 2, 3))
    v2 = Application.Index(Array(1, 2, 3), 4)
省略 WorkSheetFunction => 只會使函數傳回錯誤值
有加 WorkSheetFunction => 造成執行階段錯誤
也謝謝提供變通方法參考。

TOP

        靜思自在 : 信心、毅力、勇氣三者具備,則天下沒有做不成的事。
返回列表 上一主題