Step4 生徒マスターテーブルの作成 - 学校図書データベース

前回作成したデータベースに年・組・名前などを登録する生徒マスターテーブルを作成します。

メニューに戻る

スポンサーリンク






生徒マスターテーブルの作成

作成した生徒マスターをAccessで開いた画面です。計画通りに作成できています。
生徒マスターテーブル

VBAコード

下記VBAコードに変更してください。

Private Sub CommandButton1_Click()
    Dim spath As String
    
    spath = SelectFolder_FileDialog(ActiveWorkbook.Path)
    If spath = "" Then
        Exit Sub
    End If
    If Right(spath, 1) <> "\" Then
        spath = spath & "\"
    End If
    'データベースとテーブルの作成
    MyMakeTosyomasterTable spath
End Sub

スポンサーリンク



下記VBAコードに変更してください。

'データベースとテーブルの作成
Private Sub MyMakeTosyomasterTable(sDir As String)
    Dim db As Database
    Dim tbdef As TableDef
    Dim fld As Field
    Dim idx As DAO.Index

    ' データベースを作成します
    Set db = DBEngine.Workspaces(0).CreateDatabase(sDir & "図書データベース.mdb", dbLangJapanese)

    '図書マスターテーブルを作成します
    Set tbdef = db.CreateTableDef("図書マスター")

    'フィールドを作成します。
    Set fld = tbdef.CreateField("図書ID", dbLong)
    'オートナンバー型にします。
    fld.Attributes = dbAutoIncrField
    tbdef.Fields.Append fld
    
    Set fld = tbdef.CreateField("分類", dbText, 20)
    tbdef.Fields.Append fld
    Set fld = tbdef.CreateField("署名", dbText, 100)
    tbdef.Fields.Append fld
    Set fld = tbdef.CreateField("著書名", dbText, 30)
    tbdef.Fields.Append fld
    Set fld = tbdef.CreateField("出版社", dbText, 30)
    tbdef.Fields.Append fld
    Set fld = tbdef.CreateField("発行年月日", dbDate)
    tbdef.Fields.Append fld
    Set fld = tbdef.CreateField("ISBN番号", dbText, 20)
    tbdef.Fields.Append fld
    Set fld = tbdef.CreateField("値段", dbCurrency)
    tbdef.Fields.Append fld
    
    '主キーの作成
    Set idx = tbdef.CreateIndex("PrimaryKey")
    Set fld = idx.CreateField("図書ID", dbLong)
    idx.Fields.Append fld
    'Primaryプロパティをセット
    idx.Primary = True
    'インデックスを追加
    tbdef.Indexes.Append idx
    db.TableDefs.Append tbdef

    '終了処理を行います
    Set idx = Nothing
    Set fld = Nothing
    Set tbdef = Nothing


    '生徒マスターテーブルを作成します
    Set tbdef = db.CreateTableDef("生徒マスター")

    Set fld = tbdef.CreateField("生徒ID", dbLong)
    fld.Attributes = dbAutoIncrField
    tbdef.Fields.Append fld
    
    Set fld = tbdef.CreateField("年", dbLong)
    tbdef.Fields.Append fld
    Set fld = tbdef.CreateField("組", dbLong)
    tbdef.Fields.Append fld
    Set fld = tbdef.CreateField("番号", dbLong)
    tbdef.Fields.Append fld
    Set fld = tbdef.CreateField("名前", dbText, 30)
    tbdef.Fields.Append fld
    
    Set idx = tbdef.CreateIndex("PrimaryKey")
    Set fld = idx.CreateField("生徒ID", dbLong)
    idx.Fields.Append fld
    idx.Primary = True
    tbdef.Indexes.Append idx
    db.TableDefs.Append tbdef

    '終了処理を行います
    Set idx = Nothing
    Set fld = Nothing
    Set tbdef = Nothing


    'データベースを閉じます
    db.Close
    '終了処理を行います
    Set db = Nothing
End Sub

スポンサーリンク






メニューに戻る

■■■
このサイトの内容を利用して発生した、いかなる問題にも一切責任は負いませんのでご了承下さい
■■■
当ホームページに掲載されているあらゆる内容の無許可転載・転用を禁止します


Copyright (c) Excel-Excel ! All rights reserved