[attach]18891[/attach]
為了確認Frame中至少有一個OptionButton被選取時撰寫以下程式
flg = False
i = 1
For Each opt1 In Frame5.Controls
If opt1.Value = True Then
flg = True
C_Index = opt1.Caption
Exit For
End If
If i = 6 And flg = False Then
mybtn = MsgBox(mymsg5, vbExclamation, mytitle)
Exit Sub '選擇Condition
End If
i = i + 1
Next
但卻常因為新增一個OptionButton時即會產生錯誤
有辦法指定讓OptionButton一定屬於某個Frame中嗎?作者: acdx 時間: 2014-8-13 14:23
補充說明:
[attach]18892[/attach]
加入 If opt2.Parent Is Frame28 And TypeName(opt2) = "OptionButton" 結果是"否"
讓程式print opt2="dB"
該如何讓opt2設定為Frame中的OptionButton???
flgE = False
iE = 1
For Each opt2 In Frame28.Controls
If opt2.Parent Is Frame28 And TypeName(opt2) = "OptionButton" Then
If opt2.Value = True Then
flgE = True
PR_Index = opt2.Caption
Exit For
End If
If iE = 4 And flgE = False Then
mybtn = MsgBox(mymsg6, vbExclamation, mytitle)
Exit Sub '選擇PR Criteria
iE = iE + 1
End If
Else
MsgBox opt2
Exit Sub
End If
Next作者: acdx 時間: 2014-8-14 13:43
回復 2#acdx
這個問題似乎是無解
只要在原有的frame中新增一個OptionButton就會出現這樣的錯誤:
'----------------------------------------
For Each opt2 In Frame28.Controls
If opt2.Value = True Then '-----------------------執行到這一行卻顯示:執行階段錯誤 '438' 物件不支援此屬性或方法
flg = True
PR_Index = opt2.Caption
Exit For
End If
'----------------------------------------
解決方法只能將frame中OptionButton全數清空然後重新建立
究竟是為什麼?其他人會遇到嗎?該如何解決?作者: Hsieh 時間: 2014-8-14 14:51
For Each opt2 In Frame28.Controls
if opt2.name like "OptionButton*" then
If opt2.Value = True Then
flg = True
PR_Index = opt2.Caption
Exit For
End If
end if作者: acdx 時間: 2014-8-15 09:52