- 帖子
- 5923
- 主題
- 13
- 精華
- 1
- 積分
- 5986
- 點名
- 0
- 作業系統
- win10
- 軟體版本
- Office 2010
- 閱讀權限
- 150
- 性別
- 男
- 來自
- 台灣基隆
- 註冊時間
- 2010-5-1
- 最後登錄
- 2022-1-23
        
|
12#
發表於 2016-2-14 15:10
| 只看該作者
本帖最後由 GBKEE 於 2016-2-14 15:38 編輯
回復 11# sillykin
空白的表單模組程式碼- Option Explicit
- Dim xAr(), xClass() As New OP_Class
- Private Sub UserForm_Initialize()
- Dim xLeft As Integer, xTop As Integer, i As Integer, Form_Height As Integer, Form_Width As Integer
- Dim OB As Object
- xAr = Array("國防事業", "警察單位", "其他公共行政類", "教育類", "學生", "工、商及服務類", "農林漁牧類", "AAA", "BBBB", "CCCC", "DDDDD", "EEE")
- 'xAr 也可以是工作表上單欄或單列的範圍
- ReDim xClass(1 To UBound(xAr) + 1)
- xLeft = 10: xTop = 10
- For i = 1 To UBound(xAr) + 1
- Set OB = Controls.Add("Forms.OptionButton.1", "OptionButton" & i)
-
- Set xClass(i).Op = OB
- With OB
- .Caption = xAr(i - 1)
- .Tag = i
- .Left = xLeft
- .Top = xTop
- .Width = 150
- .Height = 20
- If i Mod 10 Then
- xTop = xTop + 10 + .Height
- Form_Height = IIf(Form_Height < xTop, xTop + 10 + .Height * 2, Form_Height)
- Else
- xTop = 10
- xLeft = xLeft + 10 * 2 + .Width
- Form_Width = IIf(Form_Width < xLeft, Form_Width + xLeft + .Width, Form_Width)
- End If
- End With
- Next
- '調整Form的高度,寬度
- Height = Form_Height
- Width = Form_Width
- End Sub
複製代碼 物件模組的程式碼- Option Explicit
- Public WithEvents Op As MSForms.OptionButton
- Private Sub Op_Click()
- 'OptionButton
- With Op
- MsgBox .Name & vbLf & .Caption
- [B58] = .Tag
- [C58] = .Caption
- Unload .Parent
- End With
- UserForm40.Show
- End Sub
複製代碼
|
|