動的プロパティー

Accessには、明示的に設定するまで作成されない、動的プロパティーがあります。

例えば、テーブルのDisplayControlプロパティー等です。

このようなプロパティーをVBAから参照しようとすると、プロパティーが存在しない旨のエラーが発生します。

VBAから動的プロパティーを扱う場合には、プロパティーの有無をまず確認し、存在しない場合にはCreatePropertyで作成する必要があります。

下記は、プロパティの存在をチェックし、存在しなければ作成するサンプルです。

On Error Resume Next
Set objPrp = objField.Properties("DisplayControl")
If Err.Number = 3270 Then
    'プロパティが存在しない場合はプロパティを作成する
    On Error GoTo SysError_Handler
    Err.Clear
    Set objPrp = objField.CreateProperty("DisplayControl", dbInteger, acCheckBox)
    objField.Properties.Append objPrp
End If
よかったらシェアしてね!

この記事を書いた人

コメント

コメントする

目次
閉じる