家・車以外で、人生で一番奮発した買い物

VB初心者です。ACCESSのMDBに下記の構文でFieldの追加はできたのですが
少数点以下2桁に設定する方法がわからなく困っています。
Fieldプロパティにも無く、どなたか教えて下さい。

Set field01 = tdfEmployees01.CreateField("Tanka", dbCurrency)
tdfEmployees01.Fields.Append field01

A 回答 (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 の後で実行してください。)
    • good
    • 0
この回答へのお礼

早速の回答ありがとうございます。
教えて頂いた通りにコーディングすると小数点2桁が設定できました。
感謝!感謝!です。
私のレベルでは解決まで1週間かかるのではと覚悟していましたが
おかげさまで非常に助かりました。
ありがとうございました。

お礼日時:2005/07/15 21:57

すみません、訂正です。



2行目
(誤)明示的に DisplayControl プロパティを・・・・・・
(正)明示的に DecimalPlaces プロパティを・・・・・・

以前に回答した類似のご質問の一部をそのままコピペしてしまいました。

恥ずかしいので、自信なしで・・・・・・(^_^;)
    • good
    • 0

Decimalplaces = 2


で小数点以下2桁を設定できます。
    • good
    • 1

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!


おすすめ情報