
お世話になります。
VBAにてテーブルを作成した際の、書式設定についてご教授願います。
以下のようにテーブルを作成しております。
Set cdb = CurrentDb()
Set ctb = cdb.CreateTableDef("TBL")
ctb.Fields.Append ctb.CreateField("A番号", dbInteger)
cdb.TableDefs.Append ctb
Set ctb = Nothing
cdb.Close
Set cdb = Nothing
この『A番号』フィールドは数値型で、書式を3桁にしたいと思っております。
テーブルのデザインでは書式のところに『000』と入れれば、001、002・・・となりますが、上記のようにVBAでテーブル作成したとき、どのようにすればよいか分かりません。
以上、宜しくお願い致します。
No.4ベストアンサー
- 回答日時:
リンク先をもう一度確認してください
>Set prp = fld.CreateProperty("Format", dbInteger, "000")
Set prp = fld.CreateProperty("Format", dbtext, "000")
ですよ。
追加して
fld.Properties.Append prp
の後に
Application.RefreshDatabaseWindow
を足してください
(無くても問題は有りませんがデータベースウィンドウが即更新します)
ご回答ありがとうございます。
早速、dbtextに変更したところ3桁になりました。
勉強不足ですみません。この箇所はてっきり当該フィールドのデータ型を指定する所かと思い、dbintegerとした次第です。
ありがとうございました。
大変助かりました。
No.3
- 回答日時:
こちらで解決するでしょう。
http://www.ruriplus.com/msaccess/Exp/exp0140.htm
ただ、DAO と ADO の両方に参照設定がしてあると
期待しない方のライブラリを見に行ってしまうかもしれないので
Dim db As Database → なにもしない
Dim tdef As TableDef → DAO.Tabledef
Dim fld As Field → DAO.Field
Dim prp As Property → DAO.Property
にしてください。
んで、"@@@@"の部分を、"000" で、
また、『書式』が『Format』なのは分かったけど他のは?は、
設定していないものは参照できませんので一旦手作業で設定します
その後
Sub てすと()
Dim db As Database
Dim tdf As DAO.TableDef
Dim fld As DAO.Field
Dim prp As DAO.Property
On Error Resume Next
Set db = Application.CurrentDb
Set tdf = db.TableDefs("てーぶる名")
For Each fld In tdf.Fields
Debug.Print "fieldName= " & fld.Name
For Each prp In fld.Properties
Debug.Print , "name=" & prp.Name _
, "type= " & prp.Type _
, "value= " & prp.Value
Next
Next
End Sub
なんてので調べてました。
ご回答ありがとうございます。
教えて頂いたサイトを参考にし、以下のようにしました。
しかし、テーブル自体は作成されますが、やはり書式が設定できません。
Dim db As Database
Dim tdef As DAO.TableDef
Dim fld As DAO.Field
Dim prp As DAO.Property
Set db = CurrentDb
Set tdef = db.CreateTableDef("TBL")
Set fld = tdef.CreateField("A番号", dbInteger)
tdef.Fields.Append fld
tdef.Fields.Refresh
db.TableDefs.Append tdef
db.TableDefs.Refresh
Set fld = tdef.Fields("A番号")
Set prp = fld.CreateProperty("Format", dbInteger, "000")
fld.Properties.Append prp
どこか間違っておりますでしょうか。
No.2
- 回答日時:
ご回答ありがとうございます。
教えて頂いたサイトを参考にし、以下のようにしました。
しかし、テーブル自体は作成されますが、やはり書式が設定できません。
Dim oDb As DAO.Database
Dim oTd As DAO.TableDef
Dim oPrp As DAO.Property
Dim flTNK As DAO.Field
Set oDb = CurrentDb
Set oTd = oDb.CreateTableDef("TBL")
Set flTNK = oTd.CreateField("A番号", dbInteger)
oTd.Fields.Append flTNK
oDb.TableDefs.Append oTd
Set oPrp = flTNK.CreateProperty("Format", dbInteger, "000")
flTNK.Properties.Append oPrp
どこか間違っておりますでしょうか。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Access(アクセス) アクセス テーブルの空白を変数に置換するボタンが作りたい 4 2022/07/08 11:19
- Access(アクセス) access,vbaでフォルダ内のファイルをテーブルにインポート、ファイル名もフィールドに追加したい 1 2022/08/31 11:11
- Visual Basic(VBA) access count数を変数に格納 2 2022/03/30 19:21
- Access(アクセス) AccessVBAで降順にするテーブル作成クエリを使用して作成したテーブルを削除し同一のテーブル作成 1 2023/01/06 11:17
- その他(Microsoft Office) excel テーブル 4 2023/03/18 16:11
- Visual Basic(VBA) データベースから絞り込んでデータを読み込み 1 2023/02/21 19:51
- MySQL MySQLのテーブル作成で 自信がありません。 2 2022/08/28 05:35
- Ruby pandasでsqlite3にテーブル作成・追加・読み出しでindexの取り扱い方教えてください 5 2023/03/08 09:57
- Visual Basic(VBA) ACCESS DAO で不要なテーブルのフィールド(列)の削除 4 2022/06/23 12:13
- Visual Basic(VBA) 複数シート一括作成後に、特定範囲の数式は値で貼り付けしたい 3 2022/10/07 11:18
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
スケッチスタイルの有効化
-
ワードで棒線が直接文章に入る...
-
差し込み印刷で反映されないフ...
-
Excelの集計がSUM関数で、1円...
-
スタイル同じなのに表示が異なる
-
箇条書きの記号の色が勝手に変わる
-
【エクセル】コメントの初期(...
-
エクセルで和暦表示の桁合わせ...
-
【EXCEL2003】セルの書式設定で...
-
WORDで囲み線の検索
-
C言語のprintf()関数の「f」の意味
-
Wordで網掛けの設定の仕方を教...
-
箇条書きや段落番号の行頭文字...
-
WORD 書式の設定ではない黄色の...
-
「テーブルとして書式設定」で...
-
Open office Writerで余白の調整
-
OpenOfficeの用紙のサイズ変更で
-
エクセル 電話番号に市外局番...
-
Access→Excelへエクスポートす...
-
書式のクリアするツールバーボタン
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
スケッチスタイルの有効化
-
差し込み印刷で反映されないフ...
-
ワードで棒線が直接文章に入る...
-
Excelの集計がSUM関数で、1円...
-
箇条書きの記号の色が勝手に変わる
-
【エクセル】コメントの初期(...
-
「テーブルとして書式設定」で...
-
Access→Excelへエクスポートす...
-
エクセルで和暦表示の桁合わせ...
-
OpenOfficeの用紙のサイズ変更で
-
WORD 書式の設定ではない黄色の...
-
【EXCEL2003】セルの書式設定で...
-
スタイル同じなのに表示が異なる
-
C言語のprintf()関数の「f」の意味
-
課題で、Wordを使って提出する...
-
Open office Writerで余白の調整
-
箇条書きや段落番号の行頭文字...
-
WORDで囲み線の検索
-
エクセル 電話番号に市外局番...
-
教えてください! アクセスの書...
おすすめ情報