- ベストアンサー
ACCESSのFieldの追加方法
VB初心者です。ACCESSのMDBに下記の構文でFieldの追加はできたのですが 少数点以下2桁に設定する方法がわからなく困っています。 Fieldプロパティにも無く、どなたか教えて下さい。 Set field01 = tdfEmployees01.CreateField("Tanka", dbCurrency) tdfEmployees01.Fields.Append field01
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
テキストボックスなどのコントロールに対してなら、Decimalplaces = 2 のようにプロパティを設定すればよいのですが、 DA0 で、テーブルの Field オブジェクトに設定する場合には、Properties コレクションに明示的に DisplayControl プロパティを追加してやらないと、VBAから参照できません。 (Access のHELPには、Field オブジェクトのプロパティとして載っていません。) 具体的には、 Dim dbs As Database Dim tdfEmployees01 As DAO.TableDef, field01 As DAO.Field, prp As DAO.Property Set dbs = CurrentDb Set tdfEmployees01 = dbs.CreateTableDef("テーブル名") Set field01 = tdfEmployees01.CreateField("Tanka", dbCurrency) tdfEmployees01.Fields.Append field01 dbs.TableDefs.Append tdfEmployees01 Set prp = field01.CreateProperty("DecimalPlaces", dbByte, 2) Call field01.Properties.Append(prp) のようになります。 (CreateProperty は、テーブルの Append の後で実行してください。)
お礼
早速の回答ありがとうございます。 教えて頂いた通りにコーディングすると小数点2桁が設定できました。 感謝!感謝!です。 私のレベルでは解決まで1週間かかるのではと覚悟していましたが おかげさまで非常に助かりました。 ありがとうございました。