Page.ControlType プロパティ (Access)
フォームまたはレポートのコントロールの種類を決定するには、Visual Basic の ControlType プロパティを使用します。 読み取り/書き込みの バイト です。
構文
式。Controltype
式Page オブジェクトを表す変数。
注釈
ControlType プロパティの設定値は、コントロールの種類を指定する intrinsic クラスの定数です。 CreateControl メソッドと CreateReportControl メソッドによって作成されたコントロールの完全な一覧については、AcControlType 列挙体に関するページを参照してください。
[!メモ] ControlType プロパティは、フォームのデザイン ビューまたはレポートのデザイン ビューで Visual Basic を使ってのみ設定できますが、値の取得はすべてのビューで可能です。
ControlType プロパティは、コードで特定のコントロールの種類を確認するときだけでなく、コントロールの種類を別の種類に変更するときにも使うことができます。 たとえば、フォームのデザイン ビューでテキスト ボックスの ControlType プロパティを acComboBox に設定すると、テキスト ボックスをコンボ ボックスに変更できます。
ControlType プロパティを使用して、特定の条件に従ってフォーム上の同様のコントロールの特性を変更します。 たとえば、ユーザーに対しテキスト ボックスの既存のデータの編集を禁止する場合、すべてのテキスト ボックスの " SpecialEffect /立体表示" プロパティを [Flat/なし] に設定し、フォームの " AllowEdits /更新の許可" プロパティを [No/いいえ] に設定します。 " SpecialEffect /立体表示" プロパティは、データの編集には影響を与えませんが、コントロールの動作が変更されたことを視覚的にわかるようにします。
ControlType プロパティは、CreateControl メソッドを使用するときに作成するコントロールの種類を指定するためにも使用されます。
例
次の例では、フォーム上のすべてのコントロールの ControlType プロパティを調べます。 ラベル コントロールとテキスト ボックス コントロールに対しては、プロシージャで " SpecialEffect /立体表示" プロパティを切り替えます。
ラベル コントロールの SpecialEffect プロパティが Shadowed に設定され、テキスト ボックス コントロールの SpecialEffect プロパティが Normal に設定され、 AllowAdditions、 AllowDeletions、 AllowEdits プロパティがすべて True に設定されている場合、変数はトグルされ、 intCanEdit
基になるデータの編集が許可されます。
Sub ToggleControl(frm As Form)
Dim ctl As Control
Dim intI As Integer, intCanEdit As Integer
Const conTransparent = 0
Const conWhite = 16777215
For Each ctl in frm.Controls
With ctl
Select Case .ControlType
Case acLabel
If .SpecialEffect = acEffectShadow Then
.SpecialEffect = acEffectNormal
.BorderStyle = conTransparent
intCanEdit = True
Else
.SpecialEffect = acEffectShadow
intCanEdit = False
End If
Case acTextBox
If .SpecialEffect = acEffectNormal Then
.SpecialEffect = acEffectSunken
.BackColor = conWhite
Else
.SpecialEffect = acEffectNormal
.BackColor = frm.Detail.BackColor
End If
End Select
End With
Next ctl
If intCanEdit = IFalse Then
With frm
.AllowAdditions = False
.AllowDeletions = False
.AllowEdits = False
End With
Else
With frm
.AllowAdditions = True
.AllowDeletions = True
.AllowEdits = True
End With
End If
End Sub
サポートとフィードバック
Office VBA またはこの説明書に関するご質問やフィードバックがありますか? サポートの受け方およびフィードバックをお寄せいただく方法のガイダンスについては、Office VBA のサポートおよびフィードバックを参照してください。