Visual Basic のデータ アクセス オブジェクトのプロパティを設定する
適用先: Access 2013 | Access 2016
データ アクセス オブジェクト (DAO) を使用すると、データベースの構造と、それが含まれるデータを Visual Basic から操作できます。 多くの DAO オブジェクトは、データベースに表示されるオブジェクトに対応しています。たとえば、 TableDef オブジェクトは Microsoft Access テーブルに対応しています。 また、Field オブジェクトはテーブルのフィールドに対応します。
DAO オブジェクトに設定できるプロパティの大部分は、DAO プロパティです。 Microsoft Access データベース エンジンで定義されるこれらのプロパティは、Access データベース エンジンを含むアプリケーションで同じように設定できます。 DAO オブジェクトに設定できるプロパティの中で Microsoft Access で定義されているプロパティは、Access データベース エンジンで自動的に認識されません。 DAO オブジェクトのプロパティの設定方法は、プロパティが Access データベース エンジンと Microsoft Access のどちらで定義されているかで決まります。
DAO オブジェクトの DAO プロパティを設定する
Access データベース エンジンで定義されているプロパティを設定するには、DAO オブジェクトの階層にあるオブジェクトを参照します。 一番簡単なのは、作業に必要なオブジェクトを表すオブジェクト変数を作成し、コードの中でそのオブジェクト変数を順番に参照する方法です。 たとえば、次のコードでは、TableDef オブジェクトを新規作成し、"Name/名前" プロパティを設定します。
Dim dbs As DAO.Database
Dim tdf As DAO.TableDef
Set dbs = CurrentDb
Set tdf = dbs.CreateTableDef
tdf.Name = "Contacts"
DAO オブジェクトの Microsoft Access プロパティを設定する
Microsoft Access で定義され、DAO オブジェクトに適用されるプロパティは、Access データベース エンジンに有効なプロパティとして自動的には認識されません。 プロパティを初めて設定するときに、そのプロパティを作成して、それを適用するオブジェクトの Properties コレクションに追加する必要があります。 Properties コレクションに追加したプロパティは、DAO プロパティと同じ方法で設定できます。
ユーザー インターフェイスでプロパティを初めて設定した場合、そのプロパティは Properties コレクションに自動的に追加され、通常の方法で設定できます。
Access で定義されたプロパティを設定するプロシージャを作成する場合は、エラー処理コードを記述して、設定するプロパティが既に Properties コレクション内に存在しているかを確認する必要があります。 詳細については、 CreateProperty メソッドまたは各プロパティのオンライン ヘルプを参照してください。
プロパティを作成した場合は、 Properties コレクションに追加する前に、そのプロパティの Type プロパティに適切な値を設定してください。 Type プロパティの設定値は、作成するプロパティのトピックの設定値に関する説明から判断できます。 次の表は、Type プロパティの設定値を決定するための目安です。
作成するプロパティの設定値 | Type プロパティの設定は、 |
---|---|
文字列 | dbText |
True / False | dbBoolean |
整数 | dbInteger |
次の表は、DAO オブジェクトに適用される Access 定義のプロパティの一覧です。
DAO オブジェクト | Microsoft Access で定義されたプロパティ |
---|---|
データベース | AppTitle, AppIcon, StartupShowDBWindow, StartupShowStatusBar, AllowShortcutMenus, AllowFullMenus, AllowBuiltInToolbars, AllowToolbarChanges, AllowBreakIntoCode, AllowSpecialKeys, Replicable, ReplicationConflictFunction |
SummaryInfo Container | タイトル、件名、作成者、マネージャー、会社、カテゴリ、キーワード、コメント、ハイパーリンク ベース ([ファイル] メニューの [データベースのプロパティ] を選択して使用できる [データベース名のプロパティ] ダイアログ ボックスの [概要] タブを参照してください)。 |
UserDefined Container | ([ファイル] メニューの [データベースのプロパティ] を選択して使用できる[データベース名のプロパティ] ダイアログ ボックスの [概要] タブを参照してください)。 |
TableDef | DatasheetBackColor, DatasheetCellsEffect, DatasheetFontHeight, DatasheetFontItalic, DatasheetFontName, DatasheetFontUnderline, DatasheetFontWeight, DatasheetForeColor, DatasheetGridlinesBehavior, DatasheetGridlinesColor, Description, FrozenColumns, RowHeight, ShowGrid |
QueryDef | DatasheetBackColor、 DatasheetCellsEffect、 DatasheetFontHeight、 DatasheetFontItalic、 DatasheetFontName、 DatasheetFontUnderline、 DatasheetFontWeight、 DatasheetForeColor、 DatasheetGridlinesBehavior、 DatasheetGridlinesColor、 Description、 FailOnError、 FrozenColumns、 LogMessages、 MaxRecords、 RecordLocks、 RowHeight、 ShowGrid、UseTransaction |
Field | Caption、ColumnHidden、ColumnOrder、ColumnWidth、DecimalPlaces、Description、Format、InputMask |
関連項目
- 開発者フォーラムにアクセスする
- support.office.com のヘルプにアクセスする
- UtterAccess のフォーラムにアクセスする
- 開発者と VBA のプログラミング ヘルプ センター (FMS) にアクセスする
- StackOverflow のアクセス ポスト
サポートとフィードバック
Office VBA またはこの説明書に関するご質問やフィードバックがありますか? サポートの受け方およびフィードバックをお寄せいただく方法のガイダンスについては、Office VBA のサポートおよびフィードバックを参照してください。